【发布时间】:2015-12-15 08:26:44
【问题描述】:
我试图从我添加的cordova插件中调用一个javascript函数:
下面是我的代码:
添加pulgin后生成的js文件:
cordova.define("cordova-plugin-custom-camera-preview.PreviewCamera", function(require, exports, module) { var previewCamera = {
createEvent: function(successCallback, errorCallback) {
}
}
var previewCamera = {
createEvent: function(successCallback, errorCallback) {
cordova.exec(successCallback,errorCallback, "CustomCameraPreview", "action_preview_camera_pulgin", "" );
}
}
});
这就是我试图在 html 中调用上述函数的方式:
<script type="text/javascript" src="../plugins/cordova-plugin-custom-camera-preview/PreviewCamera.js"></script>
function customCamera( ) {
PreviewCamera.previewCamera.createEvent(function()
{
alert("S");
}, function()
{
alert("F");
});
}
问题:09-18 14:16:49.516 14182-14182/com.rule14.bancmate I/chromium:[INFO:CONSOLE(318)]“未捕获的 ReferenceError:插件未定义”,来源:file:// /android_asset/www/pages/xxx.html (318)
编辑: cordova-plugin.js 的一部分:
cordova.define('cordova/plugin_list', function(require, exports, module) {
module.exports = [
{
"file": "plugins/cordova-plugin-camera/www/CameraConstants.js",
"id": "cordova-plugin-camera.Camera",
"clobbers": [
"Camera"
]
},
{
"file": "plugins/cordova-plugin-camera/www/CameraPopoverOptions.js",
"id": "cordova-plugin-camera.CameraPopoverOptions",
"clobbers": [
"CameraPopoverOptions"
]
},
{
"file": "plugins/cordova-plugin-camera/www/Camera.js",
"id": "cordova-plugin-camera.camera",
"clobbers": [
"navigator.camera"
]
},
{
"file": "plugins/cordova-plugin-camera/www/CameraPopoverHandle.js",
"id": "cordova-plugin-camera.CameraPopoverHandle",
"clobbers": [
"CameraPopoverHandle"
]
},
{
"file": "plugins/cordova-plugin-whitelist/whitelist.js",
"id": "cordova-plugin-whitelist.whitelist",
"runs": true
},
{
"file": "plugins/cordova-plugin-custom-camera-preview/PreviewCamera.js",
"id": "cordova-plugin-custom-camera-preview.PreviewCamera",
"clobbers": [
"PreviewCamera"
]
}
];
module.exports.metadata =
// TOP OF METADATA
{
"cordova-plugin-camera": "1.2.0",
"cordova-plugin-whitelist": "1.0.0",
"cordova-plugin-custom-camera-preview": "1.0"
}
// BOTTOM OF METADATA
});
【问题讨论】:
-
你是否在 Cordova-plugin.js 中定义了你的插件?
-
@SameerDonga 在文档中提到 cordova.js 会自动加载它
-
我说的是 Cordova-plugin.js
-
对此不了解更多,我只是参考了 tut 并做到了,你能指导更多..@SameerDonga
-
@SameerDonga 我没有在 cordova-plugin.js 中添加它自动更新,请看我编辑的问题,我还错过了什么? html中的调用是否正确?对我来说似乎有些不对劲。
标签: android cordova cordova-plugins