在 Android 上运行的 Ionic AngularJS Cordova 应用
我有一个启动一些事件监听器的服务。有些可以工作,而两个会导致应用程序因 logcat 错误而崩溃
Uncaught Function required as first argument!
注册事件监听器的函数
var _init = function () {
var onDeviceReady = function () {
_startCamera();
window.addEventListener('orientationchange', _startCamera);
document.addEventListener('pause', _stopCamera(), false); // causes crash on start
document.addEventListener('resume', _startCamera(), false); // causes crash on start
};
document.addEventListener('deviceready', onDeviceReady, false);
};
deviceready 和orientationchange 的事件监听器起作用;但是,如果我保留暂停或恢复应用程序崩溃。如果我注释掉这两行,应用程序就可以正常运行。
我的 _startCamera 和 _stopCamera 定义
var _stopCamera = function () {
...
};
var _startCamera = function () {
...
};
我已经尝试过:
- 将函数声明更改为
_stopCamera function () { ... }
,无需更改 - 在 _init 之前或之后声明这两个函数,没有变化
- 将两个 addEventListener 放置在 onDeviceReady 外部和内部,没有变化
--如何解决 Cordova 声称函数调用错误的问题?
最佳答案
您正在调用这些处理程序而不是传递它们。删除()
。
document.addEventListener('pause', _stopCamera, false);
document.addEventListener('resume', _startCamera, false);
关于javascript - Cordova Android 'Uncaught Function required as first argument' 由事件监听器引起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32289486/