我试图制作this插件工作的phonegap barcode scanner示例。我已替换www
文件夹中的所有文件,并且我还使用CLI命令安装了该插件
phonegap plugin add phonegap-plugin-barcodescanner
但按下扫描按钮,只有index.js第55行中的console.log('scanning')
命令有效。我的问题是:
index.js第57行的要求中的cordova
是否指向项目的根目录(因为我没有这样的文件夹)?
var scanner = cordova.require("cordova/plugin/BarcodeScanner");
barcodescanner.js文件是否会自动发送(因为它不是示例仓库,我可以在插件目录中看到它)?
通过CLI安装后,行
<gap:plugin name="com.phonegap.plugins.barcodescanner"/>
不在config.xml
。我需要手动添加吗?
答案 0 :(得分:2)
您可以通过以下方式安装插件:
1 - 添加&#34; phonegap-plugin-barcodescanner &#34;在你的gruntFile插件列表中
2 - cd phonegap目录并运行&#34; sudo phonegap插件添加phonegap-plugin-barcodescanner &#34;。
之后你应该可以使用cordova.plugins.barcodeScanner.scan(成功,失败);
在这种情况下,您不需要手动更改任何内容,这将自动完成。
希望这能帮到你!
干杯,
答案 1 :(得分:2)
我不知道此示例是否正常工作,因为存储库中未提供完整项目的所有文件。我更愿意提供更多细节,以完全涵盖这个问题。
让我们检查一下你需要注意安装插件的几点:
platforms/{os}
文件夹(第3个问题)中的配置中添加。某些插件不需要任何进一步的手动文件传输和将脚本链接到HTML页面,但有些需要。 barcodeScanner
是其中一个需要:
请勿将barcodescanner.js
链接到index.html
文件Cordova
自动执行(第1个问题)。
每个插件都有一个plugin.xml
文件。通过它查看,js-module
元素至少有一个clobbers
元素。此元素具有target属性,该属性指示将在全局可用的全局模块。在这种情况下,通过生成调试apk或api文件来检查cordova.plugins.barcodeScanner
是否可用。
通常,您不需要在自己的代码中创建需求,因为构建过程会将插件包装在cordova.require
闭包中。关于这个插件,只需使用:
cordova.plugins.barcodeScanner.scan(function (result) {}, function (error) {});