123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- define(['$', 'template', 'IScroll', 'user', 'product', 'native', 'config', 'address'], function ($, template, IScroll, user, product, native, config, address) {
- var backHash;
- function back(event) {
- event.preventDefault();
- $(document).trigger('spa:navigate', {
- hash: backHash,
- pushData: {
- dontNeedReload: true
- }
- });
- }
- /*
- * 模块结构:5部分。
- * title:题目。
- * content:不知道是什么,似乎从没用过。
- * 以下可以当作生命周期回调,虽然并不清楚是什么时候回调的……
- * init:根据上一个页面传来的pageData初始化本页数据,生成页面,绑定事件。
- * beforeopen:接收上一个页面传来的数据、有需要的话重置数据
- * afteropen:做一些网络请求。
- * beforeclose:
- */
- return {
- title: '家庭保洁',
- body: '',
- init: function (pageData, dtd) {
- /* this是什么? */
- var $view = this;
- var $doc = $(document);
- /* 定义按钮事件。
- * 为什么不是$(selector).onclick(function)呢?
- */
- // 返回
- $view.on('swipeRight', function (event) {
- back.call(this, event);
- });
- $.newTouch('.back-button', function (event) {
- back.call(this, event);
- }, $view);
- $view.on('tapBackButton', function (event) {
- back.call(this, event);
- });
- /*活动入口*/
- $.newTouch('.Long-term-set', function (event) {
- event.preventDefault();
- $doc.trigger('spa:navigate', {
- hash: 'activity-day',
- pushData: {
- needReset: true,
- backHash: 'secondary'
- }
- });
- }, $view);
- /* 点击产品列表的某一项 */
- $.newTouch('.btn-product', function (event) {
- event.preventDefault();
- var type = parseInt($(this).attr('data-product-type'));
- /*
- * 这个写法是SPA路由框架规定的。
- * $(selector).trigger(event, params)是jQuery的:触发被选元素上的指定事件
- */
- $doc.trigger('spa:navigate', {
- hash: 'placeOrder',
- pushData: {
- product: product.allList[type - 1],
- needReset: true,
- backHash: 'secondary'
- }
- });
- }, $view);
- // im
- $.newTouch('.btn-action-logo', function (event) {
- event.preventDefault();
- window.location.href = '/index.php?r=o2o/advisory/im';
- }, $view);
- /*首页*/
- $.newTouch('.btn-action-my-order', function () {
- event.preventDefault();
- $doc.trigger('spa:navigate', {
- hash: '',
- pushData: {
- needReset: true
- }
- });
- }, $view);
- /*个人中心*/
- $.newTouch('.btn-action-coupon', function (event) {
- event.preventDefault();
- user.checkLogin(function () {
- $doc.trigger('spa:navigate', {
- hash: 'mine',
- pushData: {
- needReset: true
- }
- });
- });
- }, $view);
- /* 不知道什么意思。*/
- dtd.resolve();
- },
- beforeopen: function (pageData, dtd) {
- /*获取上一页跳转的路由名称*/
- var pushData = pageData.pushData;
- backHash = pushData.backHash ? pushData.backHash : '';
- dtd.resolve();
- },
- afteropen: function (pageData, dtd) {
- var $view = this;
- var $doc = $(document);
- if (pageData.pushData && pageData.pushData.needReset) {
- /*var tpl = template('secondary/index', {
- showNavBar: !config.isWX,
- userName: user.name == '' ? '未登录' : user.name,
- userBalance: user.balance,
- defaultAddress: addressStr
- });*/
- var tpl = template('secondary/index', {showNavBar: !config.isWX});
- $('.spa-page-body', $view).html(tpl);
- setTimeout(function () {
- pageData.scroll = new IScroll('#secondaryScroll');
- }, 500);
- setTimeout(function () {
- /*设置页面高度-开始*/
- $('#list0').height(($('.btn-product').height() * 3) + $('.prevent-scroll').height());//设置ul高度;
- /*设置页面高度-结束*/
- }, 200);
- }
- /* 又是这个。不知道什么玩意…… */
- dtd.resolve();
- },
- beforeclose: function (pageData, dtd) {
- dtd.resolve();
- }
- }
- })
|