productInfo.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. define(['$', 'template', 'product', 'cart', 'api', 'order', 'user', 'config', 'review', 'native', 'IScroll'], function ($, template, product, cart, api, order, user, config, review, native, IScroll) {
  2. function back(event) {
  3. event.preventDefault();
  4. $(document).trigger('spa:navigate', {
  5. hash: 'product',
  6. pushData: {
  7. type: cachePageData.productType,
  8. needReload: cachePageData.needReload,
  9. fromHome: cachePageData.fromHome
  10. }
  11. });
  12. }
  13. var cachePageData = {}; //page内部的数据传递
  14. return {
  15. title: '壹管家上门服务',
  16. body: '',
  17. init: function (pageData, dtd) {
  18. var productType = pageData.pushData.productType;
  19. var $view = this;
  20. var $doc = $(document);
  21. //返回
  22. $.newTouch('.back-button', function (event) {
  23. back.call(this, event);
  24. }, $view);
  25. $view.on('tapBackButton', function (event) {
  26. back.call(this, event);
  27. });
  28. $view.on('swipeRight', function (event) {
  29. back.call(this, event);
  30. });
  31. dtd.resolve();
  32. },
  33. beforeopen: function (pageData, dtd) {
  34. var $view = this;
  35. var productType = pageData.requestData[0];
  36. var pushData = pageData.pushData;
  37. var $doc = $(document);
  38. cachePageData.productType = parseFloat(productType);
  39. cachePageData.needReload = pushData.needReload;
  40. cachePageData.fromHome = pushData.fromHome;
  41. var tmpData = {
  42. showNavBar: !config.isWX && !config.isChubao,
  43. tips: product.getGroupDesc(parseFloat(productType))
  44. };
  45. var tpl = template('product/info', tmpData);
  46. $view.find('.spa-page-body').html(tpl);
  47. setTimeout(function() {
  48. cachePageData.scroll = new IScroll('#productInfoScroll');
  49. }, 50);
  50. dtd.resolve();
  51. }
  52. }
  53. })