Commit 630cc59e authored by wangwei's avatar wangwei

打包

parent 05223042
...@@ -7,6 +7,6 @@ module.exports = merge(prodEnv, { ...@@ -7,6 +7,6 @@ module.exports = merge(prodEnv, {
API_URL: '"/"', API_URL: '"/"',
MAX_FILESIZE:'1024*1024*10', MAX_FILESIZE:'1024*1024*10',
IMAGE_URL_HEAD:'"http://cdn.singsingenglish.com/"', IMAGE_URL_HEAD:'"http://cdn.singsingenglish.com/"',
AUTHOR_UEL:'"http://wechat.test.singsingenglish.com/api/client/login?redirect_url=http://10.1.21.181:8085/#"', AUTHOR_UEL:'"http://wechat.test.singsingenglish.com/api/client/login?redirect_url=http://192.168.31.217:8085/#"',
REDIRECT_URL:'"http://localhost:8085/"', REDIRECT_URL:'"http://localhost:8085/"',
}); });
...@@ -13,12 +13,12 @@ module.exports = { ...@@ -13,12 +13,12 @@ module.exports = {
proxyTable: { proxyTable: {
'/api': { '/api': {
target: 'http://local.base-api.sing.com', // 接口的域名 target: 'http://local.base-api.sing.com', // 接口的域名
// target: 'wechat.test.singsingenglish.com', // target: 'http://wechat.test.singsingenglish.com/',
changeOrigin: true, // 如果接口跨域,需要进行这个参数配置 changeOrigin: true, // 如果接口跨域,需要进行这个参数配置
} }
}, },
// Various Dev Server settings // Various Dev Server settings
host: '10.1.21.181', // can be overwritten by process.env.HOST host: '192.168.31.217', // can be overwritten by process.env.HOST
port: 8085, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined port: 8085, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: false, autoOpenBrowser: false,
errorOverlay: true, errorOverlay: true,
...@@ -55,7 +55,7 @@ module.exports = { ...@@ -55,7 +55,7 @@ module.exports = {
* Source Maps * Source Maps
*/ */
productionSourceMap: true, productionSourceMap: false,
// https://webpack.js.org/configuration/devtool/#production // https://webpack.js.org/configuration/devtool/#production
devtool: '#source-map', devtool: '#source-map',
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
{"version":3,"sources":["webpack:///webpack/bootstrap df895456751c9afacdfd"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap df895456751c9afacdfd"],"sourceRoot":""} {"version":3,"sources":["webpack:///webpack/bootstrap 4dbf468293683208934e"],"names":["parentJsonpFunction","window","chunkIds","moreModules","executeModules","moduleId","chunkId","result","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","shift","__webpack_require__","s","installedModules","2","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","n","__esModule","object","property","p","oe","err","console","error"],"mappings":"aACA,IAAAA,EAAAC,OAAA,aACAA,OAAA,sBAAAC,EAAAC,EAAAC,GAIA,IADA,IAAAC,EAAAC,EAAAC,EAAAC,EAAA,EAAAC,KACQD,EAAAN,EAAAQ,OAAoBF,IAC5BF,EAAAJ,EAAAM,GACAG,EAAAL,IACAG,EAAAG,KAAAD,EAAAL,GAAA,IAEAK,EAAAL,GAAA,EAEA,IAAAD,KAAAF,EACAU,OAAAC,UAAAC,eAAAC,KAAAb,EAAAE,KACAY,EAAAZ,GAAAF,EAAAE,IAIA,IADAL,KAAAE,EAAAC,EAAAC,GACAK,EAAAC,QACAD,EAAAS,OAAAT,GAEA,GAAAL,EACA,IAAAI,EAAA,EAAYA,EAAAJ,EAAAM,OAA2BF,IACvCD,EAAAY,IAAAC,EAAAhB,EAAAI,IAGA,OAAAD,GAIA,IAAAc,KAGAV,GACAW,EAAA,GAIA,SAAAH,EAAAd,GAGA,GAAAgB,EAAAhB,GACA,OAAAgB,EAAAhB,GAAAkB,QAGA,IAAAC,EAAAH,EAAAhB,IACAG,EAAAH,EACAoB,GAAA,EACAF,YAUA,OANAN,EAAAZ,GAAAW,KAAAQ,EAAAD,QAAAC,IAAAD,QAAAJ,GAGAK,EAAAC,GAAA,EAGAD,EAAAD,QAKAJ,EAAAO,EAAAT,EAGAE,EAAAQ,EAAAN,EAGAF,EAAAS,EAAA,SAAAL,EAAAM,EAAAC,GACAX,EAAAY,EAAAR,EAAAM,IACAhB,OAAAmB,eAAAT,EAAAM,GACAI,cAAA,EACAC,YAAA,EACAC,IAAAL,KAMAX,EAAAiB,EAAA,SAAAZ,GACA,IAAAM,EAAAN,KAAAa,WACA,WAA2B,OAAAb,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAL,EAAAS,EAAAE,EAAA,IAAAA,GACAA,GAIAX,EAAAY,EAAA,SAAAO,EAAAC,GAAsD,OAAA1B,OAAAC,UAAAC,eAAAC,KAAAsB,EAAAC,IAGtDpB,EAAAqB,EAAA,IAGArB,EAAAsB,GAAA,SAAAC,GAA8D,MAApBC,QAAAC,MAAAF,GAAoBA","file":"static/js/manifest.2ae2e69a05c33dfc65f8.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tvar parentJsonpFunction = window[\"webpackJsonp\"];\n \twindow[\"webpackJsonp\"] = function webpackJsonpCallback(chunkIds, moreModules, executeModules) {\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [], result;\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(chunkIds, moreModules, executeModules);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n \t\tif(executeModules) {\n \t\t\tfor(i=0; i < executeModules.length; i++) {\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = executeModules[i]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t};\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// objects to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 4dbf468293683208934e"],"sourceRoot":""}
\ No newline at end of file \ No newline at end of file
This diff is collapsed.
This diff is collapsed.
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"><title>唱唱启蒙英语</title><link rel=stylesheet href=https://at.alicdn.com/t/font_822651_g9r2j7kybxu.css><link href=/static/css/app.43acb5e297d6c3df9d5d1732a776a1f6.css rel=stylesheet></head><body><div id=app></div><script src=https://res.wx.qq.com/open/js/jweixin-1.3.2.js></script><script src=https://res.wx.qq.com/mmbizwap/zh_CN/htmledition/js/vconsole/3.0.0/vconsole.min.js></script><script>var vConsole = new VConsole();</script><script type=text/javascript src=/static/js/manifest.2ae2e69a05c33dfc65f8.js></script><script type=text/javascript src=/static/js/vendor.6ebfa19af2343a32c049.js></script><script type=text/javascript src=/static/js/app.707f1c446dbe2570f8ba.js></script></body></html> <!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"><title>唱唱启蒙英语</title><link rel=stylesheet href=https://at.alicdn.com/t/font_822651_g9r2j7kybxu.css><link href=/static/css/app.cab8dac1a583f679d8b50e3ddf157703.css rel=stylesheet></head><body><div id=app></div><script src=https://res.wx.qq.com/open/js/jweixin-1.3.2.js></script><script src=https://res.wx.qq.com/mmbizwap/zh_CN/htmledition/js/vconsole/3.0.0/vconsole.min.js></script><script>var vConsole = new VConsole();</script><script type=text/javascript src=/static/js/manifest.dec2cc03f2ac4d7abf19.js></script><script type=text/javascript src=/static/js/vendor.fd5d0007b823e3b5a8f3.js></script><script type=text/javascript src=/static/js/app.1f13090cf51f641aec1e.js></script></body></html>
\ No newline at end of file \ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
webpackJsonp([5],{LM1A:function(s,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=i("Jmy5"),n=i("CCn6"),e={data:function(){return{periods_id:this.$route.query.periods_id,parent_category_id:this.$route.query.parent_category_id,imgUrl:a.c,lessonList:[],courseList:[],showLesson:!1,thisLesson:null}},computed:{titleName:function(){var s=this;return this.courseList.find(function(t){return t.id===Number(s.parent_category_id)})}},components:{bottomTab:i("2oJL").a},mounted:function(){this.initPage()},methods:{initPage:function(){var s=this;Object(n.e)(this.periods_id,{category_id:Number(this.parent_category_id)}).then(function(t){s.lessonList=t.list,s.$nextTick(function(){document.getElementById("nowLesson").scrollIntoView({behavior:"smooth",start:"center"})})}),Object(n.b)(this.periods_id).then(function(t){s.courseList=t})},showDia:function(s){this.thisLesson=s,this.showLesson=!0},showCourseList:function(){},goToLesson:function(s){var t={periods_id:this.thisLesson.periods_id,category_id:this.thisLesson.category_id,parent_category_id:this.parent_category_id,type:s};this.$router.push({name:"lesson",query:t})}}},o={render:function(){var s=this,t=s.$createElement,i=s._self._c||t;return i("div",[i("div",{staticClass:"map"},[i("img",{staticClass:"background",attrs:{src:s.imgUrl.background}}),s._v(" "),i("img",{staticClass:"go",attrs:{src:s.imgUrl.go}}),s._v(" "),s.courseList.length>0?i("div",{staticClass:"title",on:{click:s.showCourseList}},[s._v("\n "+s._s(s.titleName.category_name)+"\n "),i("i",{staticClass:"iconfont icon-xiala"})]):s._e(),s._v(" "),s._l(s.lessonList,function(t,a){return i("div",{class:"island-block land"+(a+1),attrs:{id:a===s.lessonList.length-1?"nowLesson":""}},[i("div",{class:{today:a===s.lessonList.length-1},on:{click:function(i){s.showDia(t)}}},[a!==s.lessonList.length-1?i("img",{staticClass:"land",attrs:{src:s.imgUrl.isLandAct}}):s._e(),s._v(" "),a===s.lessonList.length-1?i("img",{staticClass:"land",attrs:{src:s.imgUrl.islandNow}}):s._e(),s._v(" "),i("img",{staticClass:"day",attrs:{src:s.imgUrl.day[a]}}),s._v(" "),i("div",{staticClass:"star-block"},[t.watch_list.find(function(s){return 2===s.page_id})?s._e():i("img",{attrs:{src:s.imgUrl.starDefault}}),s._v(" "),t.watch_list.find(function(s){return 2===s.page_id})?i("img",{attrs:{src:s.imgUrl.starSelect}}):s._e(),s._v(" "),t.watch_list.find(function(s){return 3===s.page_id})?s._e():i("img",{attrs:{src:s.imgUrl.starDefault}}),s._v(" "),t.watch_list.find(function(s){return 3===s.page_id})?i("img",{attrs:{src:s.imgUrl.starSelect}}):s._e(),s._v(" "),t.watch_list.find(function(s){return 4===s.page_id})?s._e():i("img",{attrs:{src:s.imgUrl.starDefault}}),s._v(" "),t.watch_list.find(function(s){return 4===s.page_id})?i("img",{attrs:{src:s.imgUrl.starSelect}}):s._e()])])])}),s._v(" "),s._l(10-s.lessonList.length,function(t){return i("div",{class:"island-block land"+(10-t+1)},[i("img",{staticClass:"land",attrs:{src:s.imgUrl.islandDefault}}),s._v(" "),i("img",{staticClass:"day",attrs:{src:s.imgUrl.day[10-t]}}),s._v(" "),i("div",{staticClass:"star-block"},[i("img",{attrs:{src:s.imgUrl.starDefault}}),s._v(" "),i("img",{attrs:{src:s.imgUrl.starDefault}}),s._v(" "),i("img",{attrs:{src:s.imgUrl.starDefault}})])])})],2),s._v(" "),i("img",{staticClass:"box-img",attrs:{src:s.imgUrl.box}}),s._v(" "),i("bottom-tab"),s._v(" "),i("mt-popup",{model:{value:s.showLesson,callback:function(t){s.showLesson=t},expression:"showLesson"}},[i("div",{staticClass:"lesson-block"},[i("img",{staticClass:"lesson-bg",attrs:{src:s.imgUrl.lessonBg}}),s._v(" "),i("img",{staticClass:"close",attrs:{src:s.imgUrl.close},on:{click:function(t){s.showLesson=!1}}}),s._v(" "),s.thisLesson?i("div",{staticClass:"list-block"},[i("div",{staticClass:"img-block"},[i("img",{staticClass:"look list",attrs:{src:s.imgUrl.look},on:{click:function(t){s.goToLesson("look1")}}})]),s._v(" "),s.thisLesson?i("div",{staticClass:"img-block"},[i("img",{staticClass:"play list",attrs:{src:s.imgUrl.play},on:{click:function(t){s.goToLesson("play1")}}}),s._v(" "),s.thisLesson.watch_list.find(function(s){return 2===s.page_id})?s._e():i("div",{staticClass:"disable-block"},[i("img",{attrs:{src:s.imgUrl.clock}})])]):s._e(),s._v(" "),i("div",{staticClass:"img-block"},[i("img",{staticClass:"show list",attrs:{src:s.imgUrl.show},on:{click:function(t){s.goToLesson("show1")}}}),s._v(" "),s.thisLesson.watch_list.find(function(s){return 3===s.page_id})?s._e():i("div",{staticClass:"disable-block"},[i("img",{attrs:{src:s.imgUrl.clock}})])]),s._v(" "),i("div",{staticClass:"img-block"},[i("img",{staticClass:"jiayou list",attrs:{src:s.imgUrl.jiayou},on:{click:function(t){s.goToLesson("refueling1")}}}),s._v(" "),s.thisLesson.watch_list.find(function(s){return 4===s.page_id})?s._e():i("div",{staticClass:"disable-block"},[i("img",{attrs:{src:s.imgUrl.clock}})])])]):s._e()])])],1)},staticRenderFns:[]};var r=i("VU/8")(e,o,!1,function(s){i("ux1Z")},"data-v-e67c9d14",null);t.default=r.exports},ux1Z:function(s,t){}});
\ No newline at end of file
webpackJsonp([6],{hi99:function(t,e){},"sA+T":function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i={name:"author",data:function(){return{loadingUrl:"https://cdn.singsingenglish.com/singsing/poster/monkey.jpg"}},created:function(){localStorage.setItem("retUrl",this.$route.query.retUrl),window.location.href="http://wechat.test.singsingenglish.com/api/client/login"},methods:{onPageReload:function(){window.location.reload()}}},s={render:function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"author"},[e("img",{attrs:{src:this.loadingUrl}}),this._v(" "),e("p",[this._v("正在加载中......")]),this._v(" "),e("p",{staticClass:"reload",attrs:{click:this.onPageReload}},[this._v("点击重新加载")])])},staticRenderFns:[]};var a=n("VU/8")(i,s,!1,function(t){n("hi99")},"data-v-84384340",null);e.default=a.exports}});
\ No newline at end of file
webpackJsonp([7],{cbsF:function(t,s){},v9XT:function(t,s,o){"use strict";Object.defineProperty(s,"__esModule",{value:!0});var n=o("CCn6"),i=o("Jmy5"),e=o("Au9i"),a={name:"lesson",data:function(){var t=this.$route.query;return{periods_id:t.periods_id,category_id:t.category_id,parent_category_id:t.parent_category_id,type:t.type,watch_list:[],lessonList:null,id:0,nowLesson:null,timeLong:Date.parse(new Date),mouldUrl:{look1:i.b,radio1:i.f,play1:i.e,show1:i.h,refueling1:i.g}}},mounted:function(){this.initPage()},methods:{initPage:function(){var t=this;Object(n.d)(this.periods_id,this.category_id).then(function(s){t.lessonList=JSON.parse(s.content),t.id=s.id,t.watch_list=s.watch_list,t.nowLesson=t.lessonList.find(function(s){return s.key===t.type})})},goNext:function(t,s){var o=this,i=Date.parse(new Date)-this.timeLong;if(!this.watch_list.find(function(t){return 1===t.page_id})&&s&&i/1e3<s)Object(e.Toast)("尚未到时间,请继续观看");else{var a=0;"look1"===this.nowLesson.key?a=1:"play1"===this.nowLesson.key||"radio1"===this.nowLesson.key&&0===this.nowLesson.content.titleType?a=2:"show1"===this.nowLesson.key?a=3:("refueling1"===this.nowLesson.key||"radio1"===this.nowLesson.key&&1===this.nowLesson.content.titleType)&&(a=4);var l={page_type:0,page_id:a,stay_time:i/1e3};Object(n.l)(this.id,this.category_id,this.periods_id,l).then(function(t){o.timeLong+=i}),this.nowLesson=this.lessonList[t]}},backToList:function(){var t={periods_id:this.periods_id,parent_category_id:this.parent_category_id};this.$router.push({name:"map",query:t})}}},l={render:function(){var t=this,s=t.$createElement,o=t._self._c||s;return o("div",{staticClass:"lesson"},[t.nowLesson&&"look1"===t.nowLesson.key?o("div",{staticClass:"look1",style:{backgroundImage:"url("+t.mouldUrl.look1.bg}},[o("div",{staticClass:"content"},[o("img",{staticClass:"reqiqiu",attrs:{src:t.mouldUrl.look1.reqiqiu}}),t._v(" "),o("img",{staticClass:"qiqiu",attrs:{src:t.mouldUrl.look1.qiqiu}}),t._v(" "),o("img",{staticClass:"feiji",attrs:{src:t.mouldUrl.look1.feiji}}),t._v(" "),o("div",{staticClass:"title"},[o("img",{attrs:{src:t.mouldUrl.look1.title1}})]),t._v(" "),o("div",{staticClass:"radio"},[o("img",{attrs:{src:t.mouldUrl.look1.radio}})]),t._v(" "),o("div",{staticClass:"today-block"},[o("img",{attrs:{src:t.mouldUrl.look1.tadayBg}}),t._v(" "),o("div",{staticClass:"today-text"},[o("div",{staticClass:"zhanwei1"}),t._v(" "),o("div",{staticClass:"zhanwei2"}),t._v(" "),o("div",{staticClass:"zhanwei3"}),t._v(" "),o("div",{domProps:{innerHTML:t._s(t.nowLesson.content.today)}})])]),t._v(" "),o("div",{staticClass:"title2-block"},[o("img",{staticClass:"title2",attrs:{src:t.mouldUrl.look1.title2}}),t._v(" "),o("div",{staticClass:"directory-text"},[o("div",{domProps:{innerHTML:t._s(t.nowLesson.content.directory)}})])])]),t._v(" "),o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.look1.bank},on:{click:function(s){t.backToList()}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.look1.go},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex,t.nowLesson.content.timeLang)}}})])]):t._e(),t._v(" "),t.nowLesson&&"play1"===t.nowLesson.key?o("div",{staticClass:"play1",style:{backgroundImage:"url("+t.mouldUrl.play1.bg}},[o("div",{staticClass:"bg-block"},[o("div",{staticClass:"video-block"},[o("div",{staticClass:"icon-class"},[o("img",{attrs:{src:t.mouldUrl.play1.play}})]),t._v(" "),t.nowLesson.content.videoUrl.length>0?o("video",{attrs:{poster:t.nowLesson.content.banner[0].url,src:t.nowLesson.content.videoUrl[0].url}}):t._e()]),t._v(" "),t.nowLesson.content.tabRadio.type?o("img",{staticClass:"radio-img",attrs:{src:t.mouldUrl.play1.radio},on:{click:function(s){t.goNext(t.nowLesson.content.tabRadio.index)}}}):t._e(),t._v(" "),o("img",{staticClass:"btn back",attrs:{src:t.mouldUrl.play1.backBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{staticClass:"btn next",attrs:{src:t.mouldUrl.play1.next},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex)}}})])]):t._e(),t._v(" "),t.nowLesson&&"radio1"===t.nowLesson.key?o("div",{staticClass:"radio1",style:{backgroundImage:"url("+(0===t.nowLesson.content.titleType?t.mouldUrl.radio1.bg:t.mouldUrl.radio1.moerduoBg)+")"}},[o("div",{staticClass:"bg-block",style:{backgroundImage:"url("+t.mouldUrl.radio1.contentBg}},[t.nowLesson.content.tabVideo.type?o("img",{staticClass:"tab-video-img",attrs:{src:t.mouldUrl.radio1.tabVideo},on:{click:function(s){t.goNext(t.nowLesson.content.tabVideo.index)}}}):t._e(),t._v(" "),o("div",{staticClass:"title"},[0===t.nowLesson.content.titleType?o("img",{attrs:{src:t.mouldUrl.radio1.title}}):t._e(),t._v(" "),1===t.nowLesson.content.titleType?o("img",{attrs:{src:t.mouldUrl.radio1.moerduo}}):t._e()]),t._v(" "),o("div",{staticClass:"cd"},[o("img",{attrs:{src:t.mouldUrl.radio1.CD}})]),t._v(" "),o("div",{staticClass:"name-block"},[o("div",{staticClass:"name"},[t.nowLesson.content.radio[0]?o("span",[t._v(t._s(t.nowLesson.content.radio[0].title))]):t._e()]),t._v(" "),o("div",{staticClass:"ahtor"},[t.nowLesson.content.radio[0]?o("span",[t._v(t._s(t.nowLesson.content.radio[0].lable))]):t._e()])]),t._v(" "),o("div",{staticClass:"play-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.loading}}),t._v(" "),o("div",{staticClass:"radius-icon"})]),t._v(" "),o("div",{staticClass:"btn-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.near}}),t._v(" "),o("img",{staticClass:"play",attrs:{src:t.mouldUrl.radio1.play}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.radio1.next}})])]),t._v(" "),0===t.nowLesson.content.buttonType?o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.backLookBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.radio1.showBtn},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex)}}})]):t._e(),t._v(" "),1===t.nowLesson.content.buttonType?o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.backPlayBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.radio1.finishBtn},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex)}}})]):t._e(),t._v(" "),2===t.nowLesson.content.buttonType?o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.backLookBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.radio1.finishBtn},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex)}}})]):t._e(),t._v(" "),3===t.nowLesson.content.buttonType?o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.radio1.backPlayBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.radio1.nextBtn},on:{click:function(s){t.goNext(t.nowLesson.content.nextIndex)}}})]):t._e()]):t._e(),t._v(" "),t.nowLesson&&"show1"===t.nowLesson.key?o("div",{staticClass:"show1",style:{backgroundImage:"url("+t.mouldUrl.show1.bg}},[o("img",{staticClass:"riji",attrs:{src:t.mouldUrl.show1.riji}}),t._v(" "),o("img",{staticClass:"yeziyou",attrs:{src:t.mouldUrl.show1.yeziyou}}),t._v(" "),o("img",{staticClass:"yezizuo",attrs:{src:t.mouldUrl.show1.yezizuo}}),t._v(" "),o("img",{staticClass:"zhaopianqiang",attrs:{src:t.mouldUrl.show1.zhaopianqiang}}),t._v(" "),o("div",{staticClass:"bg-block",style:{backgroundImage:"url("+t.mouldUrl.show1.contentBg}},[o("div",{staticClass:"title-block"},[o("img",{attrs:{src:t.mouldUrl.show1.title}})]),t._v(" "),o("div",{staticClass:"textarea"},[o("div",{staticClass:"text",attrs:{contenteditable:"",id:"text"}}),t._v(" "),o("div",{staticClass:"btn-block"},[o("img",{attrs:{src:t.mouldUrl.show1.radioIcon}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.show1.imgIcon}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.show1.videoIcon}})])]),t._v(" "),t._m(0)]),t._v(" "),o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.show1.backBtn},on:{click:function(s){t.goNext(t.nowLesson.content.lastIndex)}}}),t._v(" "),o("img",{attrs:{src:t.mouldUrl.show1.jiayoubao},on:{click:function(s){t.subLog(t.nowLesson.content.nextIndex)}}})])]):t._e(),t._v(" "),t.nowLesson&&"refueling1"===t.nowLesson.key?o("div",{staticClass:"refueling1",style:{backgroundImage:"url("+t.mouldUrl.refueling1.bg}},[o("div",{staticClass:"bg-block"},[o("img",{staticClass:"title",attrs:{src:t.mouldUrl.refueling1.title}}),t._v(" "),o("div",{staticClass:"content-img",style:{backgroundImage:t.nowLesson.content.banner[0]?"url("+t.nowLesson.content.banner[0].url:""}},[o("img",{staticClass:"radio-icon",attrs:{src:t.mouldUrl.refueling1.radio}})])]),t._v(" "),o("div",{staticClass:"bottom-block"},[o("img",{attrs:{src:t.mouldUrl.refueling1.backBtn}}),t._v(" "),t.nowLesson.content.nextType?o("img",{attrs:{src:t.mouldUrl.refueling1.next}}):t._e()])]):t._e()])},staticRenderFns:[function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticClass:"text-block"},[this._v("\n 解释说明:\n "),s("div",{staticClass:"text-content"},[this._v("\n 各位爸爸妈妈,记得在每日完成学习后记录宝宝一天的学习过程哦!养成良好的学习习惯也是很重要的一环,记录并分享后更可以获得\n "),s("span",{staticStyle:{color:"#333"}},[this._v("唱学加油包")]),this._v("哦!\n ")])])}]};var c=o("VU/8")(a,l,!1,function(t){o("cbsF")},"data-v-34fbc13a",null);s.default=c.exports}});
\ No newline at end of file
webpackJsonp([8],{"U/b5":function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0});var a=e("2oJL"),s=e("Jmy5"),n=e("CCn6"),o={name:"mine",components:{bottomTab:a.a},data:function(){return{image:s.d,userDetail:{}}},mounted:function(){this.initPage()},methods:{initPage:function(){var t=this;Object(n.g)().then(function(i){t.userDetail=i})}}},c={render:function(){var t=this,i=t.$createElement,e=t._self._c||i;return e("div",{staticClass:"mine"},[e("div",{staticClass:"head",style:{backgroundImage:"url("+t.image.head_bg+")"}},[e("img",{staticClass:"header-icon",attrs:{src:t.userDetail.avatar}}),t._v(" "),e("p",{staticClass:"name"},[t._v(t._s(t.userDetail.nickname))]),t._v(" "),e("p",{staticClass:"id"},[t._v("ID:"+t._s(t.userDetail.user_id))])]),t._v(" "),e("div",{staticClass:"list"},[e("mt-cell",{attrs:{title:"订单",to:"//github.com","is-link":""}},[e("img",{attrs:{slot:"icon",src:t.image.order,width:"24",height:"24"},slot:"icon"})]),t._v(" "),e("mt-cell",{attrs:{title:"Q&A",to:"//github.com","is-link":""}},[e("img",{attrs:{slot:"icon",src:t.image.qa,width:"24",height:"24"},slot:"icon"})])],1),t._v(" "),e("bottom-tab")],1)},staticRenderFns:[]};var r=e("VU/8")(o,c,!1,function(t){e("oy5i")},"data-v-2a321f97",null);i.default=r.exports},oy5i:function(t,i){}});
\ No newline at end of file
webpackJsonp([9],{P3Wy:function(o,s,t){"use strict";Object.defineProperty(s,"__esModule",{value:!0});var n=t("CCn6"),i={name:"myGoodsList",data:function(){return{goodsList:[]}},mounted:function(){this.initPage()},methods:{initPage:function(){var o=this;Object(n.h)().then(function(s){s.forEach(function(o){o.goods_info.desc=JSON.parse(o.goods_info.desc),o.goods_info.share_desc=JSON.parse(o.goods_info.share_desc),o.goods_info.goods_desc=JSON.parse(o.goods_info.goods_desc)}),o.goodsList=s})},toMap:function(o){this.$router.push({name:"map",query:{periods_id:o.periods_id,parent_category_id:o.periods_info.parent_category_id}})}}},e={render:function(){var o=this,s=o.$createElement,t=o._self._c||s;return t("div",{staticClass:"my-goods-list"},o._l(o.goodsList,function(s){return t("div",{key:s.id,staticClass:"card-block",on:{click:function(t){o.toMap(s)}}},[t("img",{staticClass:"banner",attrs:{src:s.goods_info.goods_desc.img[0].url}}),o._v(" "),t("div",{staticClass:"content"},[o._v("\n "+o._s(s.goods_info.name)+"\n "),t("div",{staticClass:"start-time"},[o._v("\n 开课时间:"+o._s(s.periods_info.start_at)+"\n ")])])])}))},staticRenderFns:[]};var a=t("VU/8")(i,e,!1,function(o){t("TSXW")},"data-v-27a5f04b",null);s.default=a.exports},TSXW:function(o,s){}});
\ No newline at end of file
webpackJsonp([11],{"A/v8":function(e,t){},IcnI:function(e,t,n){"use strict";var a=n("7+uW"),o=n("NYxO"),i=(n("zSLJ"),{setToken:function(e,t){e.token=t,localStorage.setItem("cc_token",t)},transitionGo:function(e){e.transitionName="slide-left"},transitionBack:function(e){e.transitionName="slide-right"}});a.default.use(o.a);t.a=new o.a.Store({state:{token:"",transitionName:"slide-left"},mutations:i,actions:{setToken:function(e,t){(0,e.commit)("setToken",t)}}})},NHnr:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=n("7+uW"),o={render:function(){var e=this.$createElement,t=this._self._c||e;return t("div",{attrs:{id:"app"}},[t("transition",{attrs:{name:this.$store.state.transitionName}},[t("router-view",{staticClass:"child-view"})],1)],1)},staticRenderFns:[]};var i=n("VU/8")({name:"App",data:function(){}},o,!1,function(e){n("A/v8")},null,null).exports,r=n("YaEn"),l=n("IcnI"),c=n("Au9i"),s=n.n(c);n("d8/S");a.default.config.productionTip=!1,a.default.use(s.a),new a.default({el:"#app",router:r.a,store:l.a,components:{App:i},template:"<App/>"})},YaEn:function(e,t,n){"use strict";var a=n("7+uW"),o=n("IcnI"),i=n("sf/l"),r=n("/ocq");a.default.use(r.a);var l=new r.a({routes:[{path:"/",name:"index",component:function(e){return Promise.all([n.e(0),n.e(3)]).then(function(){var t=[n("dAjm")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:0}},{path:"/myGoodsList",name:"myGoodsList",component:function(e){return Promise.all([n.e(0),n.e(9)]).then(function(){var t=[n("P3Wy")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:1}},{path:"/mine",name:"mine",component:function(e){return Promise.all([n.e(0),n.e(8)]).then(function(){var t=[n("U/b5")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:1}},{path:"/author",name:"author",component:function(e){return n.e(6).then(function(){var t=[n("sA+T")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:100}},{path:"/buyDetail",name:"buyDetail",component:function(e){return Promise.all([n.e(0),n.e(2)]).then(function(){var t=[n("bNYG")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{skip_login:!0,deep:10}},{path:"/buy",name:"buy",component:function(e){return Promise.all([n.e(0),n.e(4)]).then(function(){var t=[n("Y1ei")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:11}},{path:"/success",name:"success",component:function(e){return Promise.all([n.e(0),n.e(1)]).then(function(){var t=[n("IF8E")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:12}},{path:"/map",name:"map",component:function(e){return Promise.all([n.e(0),n.e(5)]).then(function(){var t=[n("LM1A")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:3}},{path:"/lesson",name:"lesson",component:function(e){return Promise.all([n.e(0),n.e(7)]).then(function(){var t=[n("v9XT")];e.apply(null,t)}.bind(this)).catch(n.oe)},meta:{deep:4}}]});l.beforeEach(function(e,t,n){e.meta.deep<t.meta.deep?o.a.commit("transitionBack"):o.a.commit("transitionGo");var a=function(){if(localStorage.getItem("retUrl")&&null!==localStorage.getItem("retUrl")&&""!==localStorage.getItem("retUrl")){var e=localStorage.getItem("retUrl").toString();localStorage.removeItem("retUrl"),n(e)}else n()};if("author"===e.name)n();else if(window.location.href.indexOf("token")>-1){var r=i.a.getUrlParam().token;o.a.dispatch("setToken",r),a()}else localStorage.getItem("cc_token")?(o.a.dispatch("setToken",localStorage.getItem("cc_token")),a()):e.meta.skip_login?a():n({name:"author",query:{retUrl:e.fullPath}})}),t.a=l},"d8/S":function(e,t){},"sf/l":function(e,t,n){"use strict";t.a={dateFmt:function(e,t){var n={"M+":e.getMonth()+1,"d+":e.getDate(),"h+":e.getHours(),"m+":e.getMinutes(),"s+":e.getSeconds(),"q+":Math.floor((e.getMonth()+3)/3),S:e.getMilliseconds()};for(var a in/(y+)/.test(t)&&(t=t.replace(RegExp.$1,(e.getFullYear()+"").substr(4-RegExp.$1.length))),n)new RegExp("("+a+")").test(t)&&(t=t.replace(RegExp.$1,1==RegExp.$1.length?n[a]:("00"+n[a]).substr((""+n[a]).length)));return t},getUrlParam:function(){var e=location.search,t=new Object;if(-1!=e.indexOf("?"))for(var n=e.substr(1).split("&"),a=0;a<n.length;a++)t[n[a].split("=")[0]]=unescape(n[a].split("=")[1]);return t},toDataURL:function(e,t){var n=new XMLHttpRequest;n.onload=function(){var e=new FileReader;e.onloadend=function(){t(e.result)},e.readAsDataURL(n.response)},n.responseType="blob",n.open("GET",e,!0),n.send()}}},zSLJ:function(e,t,n){"use strict"}},["NHnr"]);
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
!function(e){var n=window.webpackJsonp;window.webpackJsonp=function(r,a,c){for(var f,i,u,d=0,s=[];d<r.length;d++)i=r[d],t[i]&&s.push(t[i][0]),t[i]=0;for(f in a)Object.prototype.hasOwnProperty.call(a,f)&&(e[f]=a[f]);for(n&&n(r,a,c);s.length;)s.shift()();if(c)for(d=0;d<c.length;d++)u=o(o.s=c[d]);return u};var r={},t={12:0};function o(n){if(r[n])return r[n].exports;var t=r[n]={i:n,l:!1,exports:{}};return e[n].call(t.exports,t,t.exports,o),t.l=!0,t.exports}o.e=function(e){var n=t[e];if(0===n)return new Promise(function(e){e()});if(n)return n[2];var r=new Promise(function(r,o){n=t[e]=[r,o]});n[2]=r;var a=document.getElementsByTagName("head")[0],c=document.createElement("script");c.type="text/javascript",c.charset="utf-8",c.async=!0,c.timeout=12e4,o.nc&&c.setAttribute("nonce",o.nc),c.src=o.p+"static/js/"+e+"."+{0:"ddc55211a37e02be5de0",1:"dff2575ab640347468e9",2:"36059575d81ae5cf9493",3:"636139279eafda84f206",4:"304a0c726ad739bb3fed",5:"1bf0a0ab30afd7b99b99",6:"dc9c6bfdc7ee775b4790",7:"468aeca2ec6b99c6e7c1",8:"f615cfe6872b0e865bde",9:"606130c1ed458aaea503"}[e]+".js";var f=setTimeout(i,12e4);function i(){c.onerror=c.onload=null,clearTimeout(f);var n=t[e];0!==n&&(n&&n[1](new Error("Loading chunk "+e+" failed.")),t[e]=void 0)}return c.onerror=c.onload=i,a.appendChild(c),r},o.m=e,o.c=r,o.d=function(e,n,r){o.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},o.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(n,"a",n),n},o.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},o.p="/",o.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
<template> <template>
<div id="app"> <div id="app">
<router-view/> <transition :name="$store.state.transitionName">
<router-view class="child-view"/>
</transition>
</div> </div>
</template> </template>
<script> <script>
export default { export default {
name: 'App' name: 'App',
data(){
}
} }
</script> </script>
...@@ -28,4 +33,22 @@ export default { ...@@ -28,4 +33,22 @@ export default {
margin: auto; margin: auto;
padding: auto; padding: auto;
} }
.child-view {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
transition: all .5s;
}
.slide-left-enter, .slide-right-leave-active {
opacity: 0;
-webkit-transform: translate(100%, 0);
transform: translate(100%, 0);
}
.slide-left-leave-active, .slide-right-enter {
opacity: 0;
-webkit-transform: translate(-100%, 0);
transform: translate(-100%, 0);
}
</style> </style>
src/assets/mould/show1/jiayoubao.png

5.63 KB | W: | H:

src/assets/mould/show1/jiayoubao.png

7.22 KB | W: | H:

src/assets/mould/show1/jiayoubao.png
src/assets/mould/show1/jiayoubao.png
src/assets/mould/show1/jiayoubao.png
src/assets/mould/show1/jiayoubao.png
  • 2-up
  • Swipe
  • Onion skin
<template> <template>
<div class="group-buy"> <div class="group-buy">
<div class="address-block"> <div class="address-block" v-if="groupDetail.is_real === 1">
<div class="add-address" v-if="!addressObj" @click="showAdd"> <div class="add-address" v-if="!addressObj" @click="showAdd">
+请输入收件人地址 +请输入收件人地址
</div> </div>
...@@ -13,13 +13,14 @@ ...@@ -13,13 +13,14 @@
<div class="shop-block"> <div class="shop-block">
<div class="shop"> <div class="shop">
<div class="img-block"> <div class="img-block">
<img :src="groupDetail.goods_desc.img[0].url">
</div> </div>
<div> <div>
<div class="title"> <div class="title">
{{groupDetail.name}} {{groupDetail.name}}
</div> </div>
<div class="content"> <div class="content">
{{groupDetail.goods_desc}} {{groupDetail.goods_desc.desc}}
</div> </div>
<div class="price" v-if="type === 0"> <div class="price" v-if="type === 0">
价格 ¥{{groupDetail.original_price/100}} 价格 ¥{{groupDetail.original_price/100}}
...@@ -28,7 +29,7 @@ ...@@ -28,7 +29,7 @@
</div> </div>
</div> </div>
<footer> <footer>
合计金额:<span>{{price}}</span> 合计金额:<span>{{groupDetail.original_price/100}}</span>
<div class="pay-btn" @click="payOrder">提交订单</div> <div class="pay-btn" @click="payOrder">提交订单</div>
</footer> </footer>
<transition name="slide-fade"> <transition name="slide-fade">
...@@ -149,6 +150,10 @@ ...@@ -149,6 +150,10 @@
}); });
this.shopId = this.$route.query.shopId; this.shopId = this.$route.query.shopId;
getGoodsDetailApi(this.shopId).then(data=>{ getGoodsDetailApi(this.shopId).then(data=>{
data.desc = JSON.parse(data.desc);
data.goods_desc = JSON.parse(data.goods_desc);
data.share_desc = JSON.parse(data.share_desc);
this.groupDetail = data; this.groupDetail = data;
this.source = this.$route.query.source; this.source = this.$route.query.source;
if(this.type === 0){ if(this.type === 0){
......
<template>
<div>
</div>
</template>
<script>
export default {
name: "buySuccess"
}
</script>
<style scoped>
</style>
<template> <template>
<div class="group-index" v-if="groupDetail"> <div class="group-index" v-if="groupDetail">
<swiper :options="swiperOption" class="banner" ref="mySwiper"> <swiper :options="swiperOption" class="banner" ref="mySwiper">
<swiper-slide v-for="(data,index) in groupDetail.product_img" :key="index"> <swiper-slide v-for="(data,index) in groupDetail.goods_desc.img" :key="index">
<img :src="data"/> <img :src="data.url"/>
</swiper-slide> </swiper-slide>
<div class="swiper-pagination" slot="pagination"></div> <div class="swiper-pagination" slot="pagination"></div>
</swiper> </swiper>
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
{{groupDetail.name}} {{groupDetail.name}}
</div> </div>
<span class="detail"> <span class="detail">
{{groupDetail.goods_desc}} {{groupDetail.goods_desc.desc}}
</span> </span>
<div class="price"> <div class="price">
<span class="price-content">{{groupDetail.current_price/100}}</span> <span class="price-content">{{groupDetail.current_price/100}}</span>
...@@ -26,10 +26,10 @@ ...@@ -26,10 +26,10 @@
<div :class="{'tab-btn':true,active:!tabType}" @click="tabType=false">Q&A</div> <div :class="{'tab-btn':true,active:!tabType}" @click="tabType=false">Q&A</div>
</div> </div>
<div v-if="tabType" class="detail"> <div v-if="tabType" class="detail">
<div v-html="groupDetail.desc"></div> <div v-html="groupDetail.desc.detail"></div>
</div> </div>
<div v-if="!tabType" class="qa-block"> <div v-if="!tabType" class="qa-block">
<div class="qa-content" v-html="groupDetail.desc"> <div class="qa-content" v-html="groupDetail.desc.qa">
</div> </div>
</div> </div>
</div> </div>
...@@ -119,6 +119,7 @@ ...@@ -119,6 +119,7 @@
}, },
methods:{ methods:{
// 分享
onShare: function(type) { onShare: function(type) {
let URL = `${process.env.API_URL2}/#/groupbuy?groupId=${this.groupId}&source=${this.source}`; let URL = `${process.env.API_URL2}/#/groupbuy?groupId=${this.groupId}&source=${this.source}`;
if(type === 1 ){ if(type === 1 ){
...@@ -131,15 +132,21 @@ ...@@ -131,15 +132,21 @@
shareUrl:URL shareUrl:URL
}) })
}, },
// 初始化
getDetail(){ getDetail(){
if(window.location.href.indexOf('source')> -1){ if(window.location.href.indexOf('source')> -1){
this.source = comment.getUrlParam().source; this.source = this.$route.query.source;
} }
if(window.location.href.indexOf('shopId')>-1){ if(window.location.href.indexOf('shopId')>-1){
this.shopId = this.$route.query.shopId this.shopId = this.$route.query.shopId;
getGoodsDetailApi(this.shopId).then(res=>{ getGoodsDetailApi(this.shopId).then(res=>{
res.desc = JSON.parse(res.desc);
res.goods_desc = JSON.parse(res.goods_desc);
res.share_desc = JSON.parse(res.share_desc);
this.groupDetail = res; this.groupDetail = res;
this.trackingPage(`shopId=${this.shopId}&source=${this.source}`,'page') if(this.groupDetail.goods_type === 2){
}
}) })
} }
......
...@@ -22,12 +22,12 @@ ...@@ -22,12 +22,12 @@
</div> </div>
</div> </div>
<div class="class-block"> <div class="class-block">
<div class="title"> <div class="title" @click="toGoodsList()">
我的课程 我的课程
<img class="more" :src="imgUrl.indexMore"/> <img class="more" :src="imgUrl.indexMore"/>
</div> </div>
<div class="lesson-block"> <div class="lesson-block">
<swiper> <swiper :options="swiperOption2">
<swiper-slide v-for="(data,index) in lessonList" :key="index"> <swiper-slide v-for="(data,index) in lessonList" :key="index">
<div class="goods-block" @click="toMap(data)"> <div class="goods-block" @click="toMap(data)">
<span class="tips"> <span class="tips">
...@@ -36,6 +36,11 @@ ...@@ -36,6 +36,11 @@
<img :src="data.goods_info.goods_desc.img[0].url"> <img :src="data.goods_info.goods_desc.img[0].url">
</div> </div>
</swiper-slide> </swiper-slide>
<swiper-slide>
<div class="goods-block" @click="toMap(data)">
<img :src="imgUrl.noMore">
</div>
</swiper-slide>
</swiper> </swiper>
</div> </div>
</div> </div>
...@@ -72,6 +77,9 @@ ...@@ -72,6 +77,9 @@
el: '.swiper-pagination' el: '.swiper-pagination'
} }
}, },
swiperOption2:{
width: window.innerWidth*0.95,
},
lessonList:[] lessonList:[]
} }
}, },
...@@ -89,6 +97,9 @@ ...@@ -89,6 +97,9 @@
this.lessonList = res this.lessonList = res
}) })
}, },
toGoodsList(){
this.$router.push({name:'myGoodsList'})
},
toMap(data){ toMap(data){
this.$router.push({ this.$router.push({
name:'map', name:'map',
......
...@@ -24,8 +24,6 @@ ...@@ -24,8 +24,6 @@
</div> </div>
<div class="title2-block"> <div class="title2-block">
<img :src="mouldUrl.look1.title2" class="title2"/> <img :src="mouldUrl.look1.title2" class="title2"/>
<img :src="mouldUrl.look1.redM" class="redM"/>
<img :src="mouldUrl.look1.flour" class="flour"/>
<div class="directory-text"> <div class="directory-text">
<div v-html="nowLesson.content.directory"> <div v-html="nowLesson.content.directory">
</div> </div>
...@@ -34,7 +32,7 @@ ...@@ -34,7 +32,7 @@
</div> </div>
<div class="bottom-block"> <div class="bottom-block">
<img :src="mouldUrl.look1.bank" @click="backToList()"/> <img :src="mouldUrl.look1.bank" @click="backToList()"/>
<img :src="mouldUrl.look1.go" @click="goNext(nowLesson.content.nextIndex)"/> <img :src="mouldUrl.look1.go" @click="goNext(nowLesson.content.nextIndex,nowLesson.content.timeLang)"/>
</div> </div>
</div> </div>
<div v-if="nowLesson && nowLesson.key === 'play1'" class="play1" :style="{backgroundImage:`url(${mouldUrl.play1.bg}`}"> <div v-if="nowLesson && nowLesson.key === 'play1'" class="play1" :style="{backgroundImage:`url(${mouldUrl.play1.bg}`}">
...@@ -96,7 +94,6 @@ ...@@ -96,7 +94,6 @@
</div> </div>
</div> </div>
<div v-if="nowLesson && nowLesson.key === 'show1'" class="show1" :style="{backgroundImage:`url(${mouldUrl.show1.bg}`}"> <div v-if="nowLesson && nowLesson.key === 'show1'" class="show1" :style="{backgroundImage:`url(${mouldUrl.show1.bg}`}">
<img :src="mouldUrl.show1.haiou" class="haiou"/>
<img :src="mouldUrl.show1.riji" class="riji"/> <img :src="mouldUrl.show1.riji" class="riji"/>
<img :src="mouldUrl.show1.yeziyou" class="yeziyou"/> <img :src="mouldUrl.show1.yeziyou" class="yeziyou"/>
<img :src="mouldUrl.show1.yezizuo" class="yezizuo"/> <img :src="mouldUrl.show1.yezizuo" class="yezizuo"/>
...@@ -106,6 +103,9 @@ ...@@ -106,6 +103,9 @@
<img :src="mouldUrl.show1.title"/> <img :src="mouldUrl.show1.title"/>
</div> </div>
<div class="textarea"> <div class="textarea">
<div contenteditable class="text" id="text">
</div>
<div class="btn-block"> <div class="btn-block">
<img :src="mouldUrl.show1.radioIcon"/> <img :src="mouldUrl.show1.radioIcon"/>
<img :src="mouldUrl.show1.imgIcon"/> <img :src="mouldUrl.show1.imgIcon"/>
...@@ -114,15 +114,15 @@ ...@@ -114,15 +114,15 @@
</div> </div>
<div class="text-block"> <div class="text-block">
解释说明: 解释说明:
<div class="text-content" v-html="nowLesson.content.text"></div> <div class="text-content">
各位爸爸妈妈,记得在每日完成学习后记录宝宝一天的学习过程哦!养成良好的学习习惯也是很重要的一环,记录并分享后更可以获得
<span style="color: #333">唱学加油包</span>哦!
</div> </div>
<div class="sub-block">
<img :src="mouldUrl.show1.subBtn">
</div> </div>
</div> </div>
<div class="bottom-block"> <div class="bottom-block">
<img :src="mouldUrl.show1.backBtn" @click="goNext(nowLesson.content.lastIndex)"/> <img :src="mouldUrl.show1.backBtn" @click="goNext(nowLesson.content.lastIndex)"/>
<img :src="mouldUrl.show1.jiayoubao" @click="goNext(nowLesson.content.nextIndex)"/> <img :src="mouldUrl.show1.jiayoubao" @click="subLog(nowLesson.content.nextIndex)"/>
</div> </div>
</div> </div>
<div v-if="nowLesson && nowLesson.key === 'refueling1'" class="refueling1" :style="{backgroundImage:`url(${mouldUrl.refueling1.bg}`}"> <div v-if="nowLesson && nowLesson.key === 'refueling1'" class="refueling1" :style="{backgroundImage:`url(${mouldUrl.refueling1.bg}`}">
...@@ -140,8 +140,9 @@ ...@@ -140,8 +140,9 @@
</div> </div>
</template> </template>
<script> <script>
import {getLessonDetailApi} from "../service/api"; import {getLessonDetailApi,subUserLessonApi} from "../service/api";
import {look1,radio1,play1,show1,refueling1} from "../util/imgUrl"; import {look1,radio1,play1,show1,refueling1} from "../util/imgUrl";
import { Toast } from 'mint-ui';
export default { export default {
name: "lesson", name: "lesson",
data(){ data(){
...@@ -151,8 +152,11 @@ ...@@ -151,8 +152,11 @@
category_id:query.category_id, category_id:query.category_id,
parent_category_id:query.parent_category_id, parent_category_id:query.parent_category_id,
type:query.type, type:query.type,
watch_list:[],
lessonList:null, lessonList:null,
id:0,
nowLesson:null, nowLesson:null,
timeLong:Date.parse(new Date()),
mouldUrl:{ mouldUrl:{
look1:look1, look1:look1,
radio1:radio1, radio1:radio1,
...@@ -163,18 +167,44 @@ ...@@ -163,18 +167,44 @@
} }
}, },
mounted(){ mounted(){
this.initPage() this.initPage();
}, },
methods:{ methods:{
initPage(){ initPage(){
getLessonDetailApi(this.periods_id,this.category_id).then(res=>{ getLessonDetailApi(this.periods_id,this.category_id).then(res=>{
this.lessonList = JSON.parse(res.content); this.lessonList = JSON.parse(res.content);
this.id = res.id;
this.watch_list = res.watch_list;
this.nowLesson = this.lessonList.find(i=>{return i.key === this.type}) this.nowLesson = this.lessonList.find(i=>{return i.key === this.type})
}) })
}, },
goNext(i){ goNext(i,setTime){
this.nowLesson = this.lessonList[i] let stay_time = Date.parse(new Date()) - this.timeLong;
console.log(this.nowLesson) if(!this.watch_list.find(x=>{return x.page_id === 1}) && setTime && stay_time/1000 < setTime){
Toast('尚未到时间,请继续观看');
return
}
let page_id = 0;
if(this.nowLesson.key === 'look1'){
page_id = 1
}else if(this.nowLesson.key === 'play1' ||( this.nowLesson.key === 'radio1' && this.nowLesson.content.titleType === 0)){
page_id = 2
}else if(this.nowLesson.key === 'show1'){
page_id = 3
}else if(this.nowLesson.key === 'refueling1' ||( this.nowLesson.key === 'radio1' && this.nowLesson.content.titleType === 1)){
page_id = 4
}
let json = {
page_type:0,
page_id:page_id,
stay_time:stay_time/1000
};
subUserLessonApi(this.id,this.category_id,this.periods_id,json).then(res=>{
this.timeLong += stay_time
});
this.nowLesson = this.lessonList[i];
}, },
backToList(){ backToList(){
let query = { let query = {
...@@ -304,7 +334,7 @@ ...@@ -304,7 +334,7 @@
padding-left: 40/ 2 * @toVw; padding-left: 40/ 2 * @toVw;
padding-right: 30/ 2 * @toVw; padding-right: 30/ 2 * @toVw;
z-index: 3; z-index: 3;
overflow: hidden; overflow: auto;
} }
.title2{ .title2{
position: absolute; position: absolute;
...@@ -334,9 +364,9 @@ ...@@ -334,9 +364,9 @@
background: white; background: white;
text-align: left; text-align: left;
border-radius: 4 * @toVw; border-radius: 4 * @toVw;
width: 550 * @toVw ; width: 577 * @toVw ;
height: 325 * @toVw; height: 314 * @toVw;
transform-origin: 176 * @toVw 185 * @toVw; transform-origin: 168 * @toVw 185 * @toVw;
transform: rotate(90deg); transform: rotate(90deg);
padding: 10* @toVw; padding: 10* @toVw;
.radio-img{ .radio-img{
...@@ -359,7 +389,7 @@ ...@@ -359,7 +389,7 @@
background: black; background: black;
border-radius: 8/ 2 * @toVw; border-radius: 8/ 2 * @toVw;
height: 100%; height: 100%;
width: 500 * @toVw; width: 506 * @toVw;
position: relative; position: relative;
.icon-class{ .icon-class{
position: absolute; position: absolute;
...@@ -503,8 +533,8 @@ ...@@ -503,8 +533,8 @@
left: 0; left: 0;
} }
&.zhaopianqiang{ &.zhaopianqiang{
top: 380 * @toVw; top: 400 * @toVw;
right: 80/ 2 * @toVw; left: 80/ 2 * @toVw;
width: 234 / 2 * @toVw; width: 234 / 2 * @toVw;
} }
} }
...@@ -532,6 +562,15 @@ ...@@ -532,6 +562,15 @@
box-shadow: inset 1/ 2 * @toVw 1/ 2 * @toVw 3/ 2 * @toVw 1/ 2 * @toVw rgba(142,142,142,0.50); box-shadow: inset 1/ 2 * @toVw 1/ 2 * @toVw 3/ 2 * @toVw 1/ 2 * @toVw rgba(142,142,142,0.50);
border-radius: 8/ 2 * @toVw; border-radius: 8/ 2 * @toVw;
position: relative; position: relative;
.text{
position: absolute;
top: 5px;
left: 5px;
overflow: auto;
outline: none;
bottom: 5px;
right: 5px;
}
.btn-block{ .btn-block{
position: absolute; position: absolute;
bottom: 10/ 2 * @toVw; bottom: 10/ 2 * @toVw;
......
...@@ -7,15 +7,18 @@ ...@@ -7,15 +7,18 @@
{{titleName.category_name}} {{titleName.category_name}}
<i class="iconfont icon-xiala"></i> <i class="iconfont icon-xiala"></i>
</div> </div>
<div v-for="(data,index) in lessonList" :class="'island-block land'+(index+1)" :id="index === lessonList.length-2? 'nowLesson' :''"> <div v-for="(data,index) in lessonList" :class="'island-block land'+(index+1)" :id="index === lessonList.length-1? 'nowLesson' :''">
<div :class="{today:index === lessonList.length-1}" @click="showDia(data)"> <div :class="{today:index === lessonList.length-1}" @click="showDia(data)">
<img :src="imgUrl.isLandAct" v-if="index !== lessonList.length-1" class="land"/> <img :src="imgUrl.isLandAct" v-if="index !== lessonList.length-1" class="land"/>
<img :src="imgUrl.islandNow" v-if="index === lessonList.length-1" class="land"/> <img :src="imgUrl.islandNow" v-if="index === lessonList.length-1" class="land"/>
<img :src="imgUrl.day[index]" class="day"/> <img :src="imgUrl.day[index]" class="day"/>
<div class="star-block"> <div class="star-block">
<img :src="imgUrl.starDefault"/> <img :src="imgUrl.starDefault" v-if="!data.watch_list.find(i=>{return i.page_id === 2})"/>
<img :src="imgUrl.starDefault"/> <img :src="imgUrl.starSelect" v-if="data.watch_list.find(i=>{return i.page_id === 2})"/>
<img :src="imgUrl.starDefault"/> <img :src="imgUrl.starDefault" v-if="!data.watch_list.find(i=>{return i.page_id === 3})"/>
<img :src="imgUrl.starSelect" v-if="data.watch_list.find(i=>{return i.page_id === 3})"/>
<img :src="imgUrl.starDefault" v-if="!data.watch_list.find(i=>{return i.page_id === 4})"/>
<img :src="imgUrl.starSelect" v-if="data.watch_list.find(i=>{return i.page_id === 4})"/>
</div> </div>
</div> </div>
</div> </div>
...@@ -35,11 +38,28 @@ ...@@ -35,11 +38,28 @@
<div class="lesson-block"> <div class="lesson-block">
<img :src="imgUrl.lessonBg" class="lesson-bg"/> <img :src="imgUrl.lessonBg" class="lesson-bg"/>
<img :src="imgUrl.close" class="close" @click="showLesson = false"/> <img :src="imgUrl.close" class="close" @click="showLesson = false"/>
<div class="list-block"> <div class="list-block" v-if="thisLesson">
<img :src="imgUrl.look" class="look" @click="goToLesson('look1')"/> <div class="img-block">
<img :src="imgUrl.play" class="play" @click="goToLesson('play1')"/> <img :src="imgUrl.look" class="look list" @click="goToLesson('look1')"/>
<img :src="imgUrl.show" class="show"/> </div>
<img :src="imgUrl.jiayou" class="jiayou"/> <div class="img-block" v-if="thisLesson">
<img :src="imgUrl.play" class="play list" @click="goToLesson('play1')"/>
<div class="disable-block" v-if="!thisLesson.watch_list.find(i=>{return i.page_id === 2})">
<img :src="imgUrl.clock"/>
</div>
</div>
<div class="img-block">
<img :src="imgUrl.show" class="show list" @click="goToLesson('show1')"/>
<div class="disable-block" v-if="!thisLesson.watch_list.find(i=>{return i.page_id === 3})">
<img :src="imgUrl.clock"/>
</div>
</div>
<div class="img-block">
<img :src="imgUrl.jiayou" class="jiayou list" @click="goToLesson('refueling1')"/>
<div class="disable-block" v-if="!thisLesson.watch_list.find(i=>{return i.page_id === 4})">
<img :src="imgUrl.clock"/>
</div>
</div>
</div> </div>
</div> </div>
</mt-popup> </mt-popup>
...@@ -80,7 +100,7 @@ ...@@ -80,7 +100,7 @@
getLessonListApi(this.periods_id,{category_id:Number(this.parent_category_id)}).then(res=>{ getLessonListApi(this.periods_id,{category_id:Number(this.parent_category_id)}).then(res=>{
this.lessonList = res.list; this.lessonList = res.list;
this.$nextTick(function(){ this.$nextTick(function(){
document.getElementById('nowLesson').scrollIntoView() document.getElementById('nowLesson').scrollIntoView({behavior:'smooth',start:'center'})
}) })
}); });
getCourseListApi(this.periods_id).then(res=>{ getCourseListApi(this.periods_id).then(res=>{
...@@ -141,11 +161,30 @@ ...@@ -141,11 +161,30 @@
left: 50%; left: 50%;
margin-left: -146*@toVw; margin-left: -146*@toVw;
padding: 8*@toVw; padding: 8*@toVw;
.img-block{
position: relative;
overflow: hidden;
border-radius: 8px;
.disable-block{
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 7px;
border-radius: 8px;
text-align: center;
background-color: rgba(0,0,0,0.3);
img{ img{
width: 25 * @toVw;
margin-top: 15 * @toVw;
}
}
.list{
width: 100%; width: 100%;
margin-bottom: 3*@toVw; margin-bottom: 3*@toVw;
} }
} }
}
} }
.title{ .title{
......
<template>
<div class="mine">
<div class="head" :style="{backgroundImage:`url(${image.head_bg})`}">
<img class="header-icon" :src="userDetail.avatar">
<p class="name">{{userDetail.nickname}}</p>
<p class="id">ID:{{userDetail.user_id}}</p>
</div>
<div class="list">
<mt-cell title="订单" to="//github.com" is-link>
<img slot="icon" :src="image.order" width="24" height="24">
</mt-cell>
<mt-cell title="Q&A" to="//github.com" is-link>
<img slot="icon" :src="image.qa" width="24" height="24">
</mt-cell>
</div>
<bottom-tab/>
</div>
</template>
<script>
import bottomTab from './public/bottomTab';
import {mineImage} from "../util/imgUrl";
import {getUserDetailApi} from "../service/api";
export default {
name: "mine",
components:{
bottomTab
},
data(){
return {
image:mineImage,
userDetail:{}
}
},
mounted(){
this.initPage()
},
methods:{
initPage(){
getUserDetailApi().then(res=>{
this.userDetail = res
})
}
}
}
</script>
<style scoped lang="less">
@import "../util/public";
.mine{
height: 100%;
background: #EEEEEE;
overflow: auto;
.head{
width: 375 * @toVw;
height: 160 * @toVw ;
background-size: 100% 100%;
color: white;
text-align: center;
.header-icon{
margin-top: 18 * @toVw;
margin-bottom: 14 * @toVw;
width: 72 * @toVw;
height: 72 * @toVw;
border-radius: 10000px;
}
.name{
font-size:14* @toVw;
font-family:PingFang-SC-Medium;
font-weight:normal;
color:rgba(255,255,255,1);
line-height:20* @toVw;
}
.id{
font-size:12* @toVw;
font-family:PingFang-SC-Medium;
font-weight:normal;
color:rgba(255,255,255,1);
line-height:17* @toVw;
}
}
.list{
margin-top: 12*@toVw;
.mt-cell{
height: 40 * @toVw;
}
}
}
</style>
<template>
<div class="my-goods-list">
<div v-for="data in goodsList" :key="data.id" class="card-block" @click="toMap(data)">
<img class="banner" :src="data.goods_info.goods_desc.img[0].url">
<div class="content">
{{data.goods_info.name}}
<div class="start-time">
开课时间:{{data.periods_info.start_at}}
</div>
</div>
</div>
</div>
</template>
<script>
import {getUserLessonApi} from "../service/api";
export default {
name: "myGoodsList",
data(){
return {
goodsList:[]
}
},
mounted(){
this.initPage()
},
methods:{
initPage(){
getUserLessonApi().then(res=>{
res.forEach(i=>{
i.goods_info.desc = JSON.parse(i.goods_info.desc);
i.goods_info.share_desc = JSON.parse(i.goods_info.share_desc);
i.goods_info.goods_desc = JSON.parse(i.goods_info.goods_desc)
});
this.goodsList = res
})
},
toMap(data){
this.$router.push({
name:'map',
query:
{
periods_id:data.periods_id,
parent_category_id:data.periods_info.parent_category_id
}
})
}
}
}
</script>
<style scoped lang="less">
@import "../util/public";
.my-goods-list{
height: 100%;
overflow: auto;
padding: 20*@toVw 0;
.card-block{
width: 335* @toVw;
box-shadow:0px 2px 4px 0px rgba(191,191,191,0.5);
border-radius:8*@toVw;
.banner{
width: 100%;
height: 236 * @toVw;
border-radius:8*@toVw;
}
.content{
font-size:20 * @toVw;
font-family:PingFang-SC-Medium;
font-weight:normal;
color:rgba(51,51,51,1);
padding: 8 * @toVw;
line-height:28 * @toVw;
.start-time{
font-size:12 * @toVw;
font-family:PingFang-SC-Medium;
font-weight:normal;
color:rgba(51,51,51,1);
line-height:17 * @toVw;
}
}
}
}
</style>
<template> <template>
<div class="bottom-tab"> <div class="bottom-tab">
<div :class="{actived:$route.name === 'index',left:true}"> <div :class="{actived:$route.name === 'index',left:true}" @click="toUrl('index')">
<i class="iconfont icon-zhuye"></i> <i class="iconfont icon-zhuye"></i>
<br> <br>
首页 首页
</div> </div>
<div :class="{actived:$route.name === 'mine'}"> <div :class="{actived:$route.name === 'mine'}" @click="toUrl('mine')">
<i class="iconfont icon-wode"></i> <i class="iconfont icon-wode"></i>
<br> <br>
我的 我的
</div> </div>
...@@ -17,6 +16,12 @@ ...@@ -17,6 +16,12 @@
<script> <script>
export default { export default {
name: "bottomTab", name: "bottomTab",
data(){return{}},
methods:{
toUrl(data){
this.$router.push({name:data})
}
}
} }
</script> </script>
......
import Vue from 'vue' import Vue from 'vue'
import store from "@/store" import store from "@/store"
import Cookie from '../util/cookie'
import common from '../util/common' import common from '../util/common'
import Router from 'vue-router' import Router from 'vue-router'
import index from '@/components/index'
import buyDetail from '@/components/buy/index'
import buy from '@/components/buy/buy'
import success from '@/components/buy/success'
import author from'@/components/author'
import map from '@/components/map'
import lesson from '@/components/lesson'
Vue.use(Router); Vue.use(Router);
const router =new Router({ const router =new Router({
...@@ -18,40 +9,80 @@ const router =new Router({ ...@@ -18,40 +9,80 @@ const router =new Router({
{ {
path: '/', path: '/',
name: 'index', name: 'index',
component: index component: e=>require(['@/components/index'],e),// 按需加载路由对应页面
meta:{
deep:0
}
}, { }, {
path: '/myGoodsList',
name: 'myGoodsList',
component: e=>require(['@/components/myGoodsList'],e),
meta:{
deep:1
}
},{
path: '/mine',
name: 'mine',
component: e=>require(['@/components/mine'],e),
meta:{
deep:1
}
},
{
path: '/author', path: '/author',
name: 'author', name: 'author',
component: author component: e=>require(['@/components/author'],e),
meta:{
deep:100
}
},{ },{
path: '/buyDetail', path: '/buyDetail',
name: 'buyDetail', name: 'buyDetail',
component: buyDetail, component: e=>require(['@/components/buy/index'],e),
meta:{ meta:{
skip_login:true skip_login:true,
deep:10
} }
}, { }, {
path: '/buy', path: '/buy',
name: 'buy', name: 'buy',
component: buy component: e=>require(['@/components/buy/buy'],e),
meta:{
deep:11
}
}, { }, {
path: '/success', path: '/success',
name: 'success', name: 'success',
component: success component: e=>require(['@/components/buy/success'],e),
meta:{
deep:12
}
}, { }, {
path: '/map', path: '/map',
name: 'map', name: 'map',
component: map component: e=>require(['@/components/map'],e),
meta:{
deep:3
}
}, { }, {
path: '/lesson', path: '/lesson',
name: 'lesson', name: 'lesson',
component: lesson component: e=>require(['@/components/lesson'],e),
meta:{
deep:4
}
} }
] ]
}); });
router.beforeEach((to,from,next)=> { router.beforeEach((to,from,next)=> {
if(to.meta.deep < from.meta.deep){
store.commit('transitionBack')
}else{
store.commit('transitionGo')
}
let goOn=function(){ let goOn=function(){
if(localStorage.getItem('retUrl') && localStorage.getItem('retUrl') !== null && localStorage.getItem('retUrl') !== ''){ if(localStorage.getItem('retUrl') && localStorage.getItem('retUrl') !== null && localStorage.getItem('retUrl') !== ''){
let retUrl = localStorage.getItem('retUrl').toString(); let retUrl = localStorage.getItem('retUrl').toString();
......
...@@ -57,3 +57,18 @@ const getLessonDetailUrl = `${_baseUrl}api/client/element/info/` ...@@ -57,3 +57,18 @@ const getLessonDetailUrl = `${_baseUrl}api/client/element/info/`
export const getLessonDetailApi = function (periods_id,category_id) { export const getLessonDetailApi = function (periods_id,category_id) {
return Vue.prototype.$fetch(`${getLessonDetailUrl}${periods_id}/${category_id}`) return Vue.prototype.$fetch(`${getLessonDetailUrl}${periods_id}/${category_id}`)
}; };
// 获取客户详情
const getUserDetailUrl = `${_baseUrl}api/client/me`;
export const getUserDetailApi = function () {
return Vue.prototype.$fetch(getUserDetailUrl)
};
// 提交看课数据
const subUserLessonUrl = `${_baseUrl}api/client/user/watch/log/`;
export const subUserLessonApi = function (element_id,category_id,periods_id,json) {
return Vue.prototype.$post(`${subUserLessonUrl}${element_id}/${category_id}/${periods_id}`,json)
};
// 获取团购详情
const getGroupDetailUrl = `${_baseUrl}api/client/group/info/`;
export const getGroupDetailApi = function (group_id) {
return Vue.prototype.$fetch(`${getGroupDetailUrl}${group_id}`)
}
...@@ -7,6 +7,7 @@ Vue.use(vuex); ...@@ -7,6 +7,7 @@ Vue.use(vuex);
export default new vuex.Store({ export default new vuex.Store({
state:{ state:{
token:'', token:'',
transitionName:'slide-left'
}, },
mutations, mutations,
actions actions
......
...@@ -4,5 +4,11 @@ const mutations={ ...@@ -4,5 +4,11 @@ const mutations={
state.token=token; state.token=token;
localStorage.setItem('cc_token',token); localStorage.setItem('cc_token',token);
}, },
transitionGo(state){
state.transitionName='slide-left';
},
transitionBack(state){
state.transitionName='slide-right';
}
}; };
export default mutations; export default mutations;
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment