【发布时间】:2016-10-08 05:50:27
【问题描述】:
我在 ionic 上有 qz-tray.js,但在成功打印后,当我想导航到其他页面时应用程序崩溃了,这是日志
ionic.bundle.min.js:142 TypeError: Cannot read property 'params' of undefined
at i (ionic.bundle.min.js:423)
at Object.x.transitionTo (ionic.bundle.min.js:423)
at Array.<anonymous> (ionic.bundle.min.js:423)
at Object.e [as invoke] (ionic.bundle.min.js:73)
at g (ionic.bundle.min.js:423)
at ionic.bundle.min.js:423
at b (ionic.bundle.min.js:423)
at m (ionic.bundle.min.js:423)
at n.$broadcast (ionic.bundle.min.js:171)
at l (ionic.bundle.min.js:138)
我只是把 qz-tray.js 作为依赖然后放在控制器上
qz.websocket.connect().then(function () {
return qz.printers.find('MobilePrinter');
}).then(function (printer) {
var config = qz.configs.create(printer);
var data = [respon.data];
return qz.print(config, data).then(function () {
qz.websocket.disconnect();
});
})
它确实打印了数据,但在那之后应用程序崩溃了,任何帮助将不胜感激,谢谢。
[已解决]
这个函数影响数组迭代(for in),我评论原型解决了问题(qz-tray.js line 500)
stringify: function(object) {
//old versions of prototype affect stringify
var pjson = Array.prototype.toJSON;
delete Array.prototype.toJSON;
var result = JSON.stringify(object);
Array.prototype.toJSON = pjson;
return result;
},
【问题讨论】: