1

我已经将barcodescanner 插件添加到我的phonegap 项目中。似乎它没有在 window.plugins 中初始化,它看起来像“未定义”。

我在 eclipse - android sdk 中测试它。

这是我的代码,我想它写在 window.plugins

ScannerLoader(require, exports, module);
    cordova.define("cordova/plugin/BarcodeScanner", ScannerLoader);

    if (! window.plugins) {
        window.plugins = {};
    }

    if (! window.plugins.LocalNotification) {
        //window.plugins.LocalNotification = cordova.require("cordova/plugin/LocalNotification");
        window.plugins.barcodeScanner = cordova.require("cordova/plugin/BarcodeScanner");
    }

我正在使用 phonegap 2.9.0,我的操作系统是 Mac OSX Mavericks

编辑:我还注意到浏览器无法识别的插件调用 require() javascript函数。我是否必须添加另一个 js 文件才能使 require() 函数起作用?

4

1 回答 1

0

解决方案是:

  1. 确保您的插件已在 cordova 项目中初始化:

cordova.define("cordova/plugin/barcodescanner", function(require, exports, module){ .. });

  1. 确保 window.plugins 像对象一样存在,否则创建它。

    if (!window.plugins) { window.plugins = {}; }

  2. 将插件分配给 window.plugins

    if (!window.plugins.barcodeScanner) { window.plugins.barcodeScanner = cordova.require("cordova/plugin/barcodescanner"); }

于 2014-03-04T16:20:45.423 回答