2015-08-28 27 views
0

我试图将一个外部值赋给Javascript var函数。 的代码如下所示:将外部值输入到Javascript运算符

var zxc = { 

    // Application Constructor 
    initialize: function() { 

    this.bindEvents(); 
    console.log("Starting NFC Reader app"); 
    }, 
    // Bind Event Listeners 
    bindEvents: function() { 
    document.addEventListener('deviceready', this.onDeviceReady(), false); 
    }, 

    // deviceready Event Handler 
    onDeviceReady: function() { 
    //app.receivedEvent('deviceready'); 


     nfc.addTagDiscoveredListener(
     zxc.onNfc, // tag successfully scanned 
     function (status) { // listener successfully initialized 

     }, 
     function (error) { // listener fails to initialize 

     } 
     ); 
    }, 


    onNfc: function(nfcEvent) { 
    console.log("invoked function"); 
    var record1 = ndef.mimeMediaRecord('text/plain', '222'); 
     console.log(record1); 
    nfc.write(
      [record1], 
      function() { 
       console.log("Wrote Data to Tag"); 
      }, 
      function (reason) { 
      console.log("ERROR"); 
      } 
    ); 


    } 
}; 


zxc.initialize(); 

我试图使该行的值(222)的动态,

var record1 = ndef.mimeMediaRecord('text/plain', '222'); 

即,其中我可以在外部值传递到zxc.initalize ()。但是整个功能是如此复杂和相互依赖,我真的很想有一些指导如何解决这个问题。 我目前正在使用chariotstudios nfc cordova插件。 谢谢!

注意:如果你想知道什么是addTagDiscoveredListener(从https://github.com/chariotsolutions/phonegap-nfc采取截图),

Taken from https://github.com/chariotsolutions/phonegap-nfc

+0

'var'不是函数 - 这是'operator' – Grundy

+0

@Grundy谢谢!我做了改变! – Gene

+0

那么,你想要什么?将某些值传递给'initialize'方法并在'onNfc'中使用它? – Grundy

回答

0

你可以添加参数initialize,只是保存它像

initialize: function(myparam) { 
    this.myparam = myparam; 
    .... 
} 

使用这个领域你可以做这样的事情

onNfc: function(nfcEvent) { 
    console.log("invoked function"); 
    var record1 = ndef.mimeMediaRecord('text/plain', zxc.myparam); 
    ... 
}