我正在使用 cordova + react js 作为实现 NFC(近场通信)的一部分,我下载了 phonegap-nfc 插件 但是当我尝试使用 phonegap 的 nfc 插件对象变量时,在我的一个 javascript 文件中抛出异常。喜欢(从'phonegap-nfc/www/phonegap-nfc'导入nfc;) 收到的错误是:
未找到模块:错误:无法解析“D:\GIT\lockers-app-ret”中的“cordova/exec” ail-wf_latest\node_modules\phonegap-nfc\www'
相关代码如下
handleNFCPopup = () =>{ console.log("你好 jb 你在 NFC 弹出窗口...");
// Read NDEF formatted NFC Tags
nfc.addNdefListener (
(nfcEvent) =>{
var tag = nfcEvent.tag,
ndefMessage = tag.ndefMessage;
// dump the raw json of the message
// note: real code will need to decode
// the payload from each record
alert(JSON.stringify(ndefMessage));
// assuming the first record in the message has
// a payload that can be converted to a string.
alert(nfc.bytesToString(ndefMessage[0].payload).substring(3));
},
() => { // success callback
alert("Waiting for NDEF tag");
},
(error) =>{ // error callback
alert("Error adding NDEF listener " + JSON.stringify(error));
}
);
最佳答案
如果您正在使用 Cordova,并使用 cordova plugin add phonegap-nfc
安装插件,Cordova 将创建一个全局变量 nfc
(或 window. nfc
如果你愿意的话。)你不需要自己导入 phonegap-nfc.js
。在 Cordova 工具包装它之前,该文件并不是真正的模块。此外,请确保在 Cordova 的 deviceready
事件触发之前,不要调用 nfc
上的任何函数。
关于javascript - phonegap 的 nfc 插件对象在我的一个 javascript 文件中抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51493945/