1 | ;
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
8 |
|
9 | function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
10 |
|
11 | // plugin/pages.js
|
12 | // 缓存pageModel,一个简要实现
|
13 | var PM = function () {
|
14 | function PM() {
|
15 | _classCallCheck(this, PM);
|
16 |
|
17 | this.$$cache = {};
|
18 | }
|
19 |
|
20 | _createClass(PM, [{
|
21 | key: "add",
|
22 | value: function add(pageModel) {
|
23 | var pagePath = this._getPageModelPath(pageModel);
|
24 | this.$$cache[pagePath] = pageModel;
|
25 | }
|
26 | }, {
|
27 | key: "get",
|
28 | value: function get(pagePath) {
|
29 | return this.$$cache[pagePath];
|
30 | }
|
31 | }, {
|
32 | key: "delete",
|
33 | value: function _delete(pageModel) {
|
34 | try {
|
35 | delete this.$$cache[this._getPageModelPath(pageModel)];
|
36 | } catch (e) {}
|
37 | }
|
38 | }, {
|
39 | key: "_getPageModelPath",
|
40 | value: function _getPageModelPath(page) {
|
41 | // 关键点
|
42 | return page.$wxpage.__route__;
|
43 | }
|
44 | }]);
|
45 |
|
46 | return PM;
|
47 | }();
|
48 |
|
49 | exports.default = PM;
|
50 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhhY2suanMiXSwibmFtZXMiOlsiUE0iLCIkJGNhY2hlIiwicGFnZU1vZGVsIiwicGFnZVBhdGgiLCJfZ2V0UGFnZU1vZGVsUGF0aCIsImUiLCJwYWdlIiwiJHd4cGFnZSIsIl9fcm91dGVfXyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztBQUFBO0FBQ0E7SUFDcUJBLEU7QUFDbkIsZ0JBQWM7QUFBQTs7QUFDWixTQUFLQyxPQUFMLEdBQWUsRUFBZjtBQUNEOzs7O3dCQUVHQyxTLEVBQVc7QUFDYixVQUFJQyxXQUFXLEtBQUtDLGlCQUFMLENBQXVCRixTQUF2QixDQUFmO0FBQ0EsV0FBS0QsT0FBTCxDQUFhRSxRQUFiLElBQXlCRCxTQUF6QjtBQUNEOzs7d0JBRUdDLFEsRUFBVTtBQUNaLGFBQU8sS0FBS0YsT0FBTCxDQUFhRSxRQUFiLENBQVA7QUFDRDs7OzRCQUVNRCxTLEVBQVc7QUFDaEIsVUFBSTtBQUNGLGVBQU8sS0FBS0QsT0FBTCxDQUFhLEtBQUtHLGlCQUFMLENBQXVCRixTQUF2QixDQUFiLENBQVA7QUFDRCxPQUZELENBRUUsT0FBT0csQ0FBUCxFQUFVLENBQ1g7QUFDRjs7O3NDQUVpQkMsSSxFQUFNO0FBQ3JCO0FBQ0QsYUFBT0EsS0FBS0MsT0FBTCxDQUFhQyxTQUFwQjtBQUNEOzs7Ozs7a0JBeEJrQlIsRSIsImZpbGUiOiJoYWNrLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gcGx1Z2luL3BhZ2VzLmpzXG4vLyDnvJPlrZhwYWdlTW9kZWws5LiA5Liq566A6KaB5a6e546wXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBQTSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuJCRjYWNoZSA9IHt9XG4gIH1cblxuICBhZGQocGFnZU1vZGVsKSB7XG4gICAgbGV0IHBhZ2VQYXRoID0gdGhpcy5fZ2V0UGFnZU1vZGVsUGF0aChwYWdlTW9kZWwpXG4gICAgdGhpcy4kJGNhY2hlW3BhZ2VQYXRoXSA9IHBhZ2VNb2RlbFxuICB9XG5cbiAgZ2V0KHBhZ2VQYXRoKSB7XG4gICAgcmV0dXJuIHRoaXMuJCRjYWNoZVtwYWdlUGF0aF1cbiAgfVxuXG4gIGRlbGV0ZShwYWdlTW9kZWwpIHtcbiAgICB0cnkge1xuICAgICAgZGVsZXRlIHRoaXMuJCRjYWNoZVt0aGlzLl9nZXRQYWdlTW9kZWxQYXRoKHBhZ2VNb2RlbCldXG4gICAgfSBjYXRjaCAoZSkge1xuICAgIH1cbiAgfVxuXG4gIF9nZXRQYWdlTW9kZWxQYXRoKHBhZ2UpIHtcbiAgICAgLy8g5YWz6ZSu54K5XG4gICAgcmV0dXJuIHBhZ2UuJHd4cGFnZS5fX3JvdXRlX19cbiAgfVxuICAgfVxuIl19 |
\ | No newline at end of file |