簡體   English   中英

流星-如何從其他JS文件調用外部類方法?

[英]Meteor - How to call an external class methods from other JS files?

我是新來的流星。 我一直試圖以“面向對象的方式”編寫流星代碼,所以我為Parser創建了一個名為Message的對象,並從我的app.js中調用了它的方法。

我想實例化對象並從app.js調用Message.JS中定義的方法嗎?

應用程式結構

應用
| --app.html
| --app.js
| --app.css
| --message.js
| - 流星

message.js

  var Message = {


    init: function( message ){

   /* Initialization function with some properties */

   }

  getHash: function() {
    return this.hash_table;
   }

  parseMessage: function(input) {

 /* Some Parsing logic */

  return(hash_table);
 }
 }

app.js

if (Meteor.isServer) {

 var msg = new Message.init(response);
 var hash =  msg.getHash();
 console.log(hash);

}

用var聲明的變量在Meteor中具有文件作用域,並且不能從其他文件中訪問。 如果您聲明不帶var的變量,則它將具有更大的作用域,並且可以在您的應用中看到,

Message = {
    ...
}

如果這不起作用,則可能是裝載順序有問題。 應該先調用message.js中的代碼,然后再調用app.js中的代碼。 為確保正確,將message.js放在/ lib文件夾中。 此文件夾中的文件始終先加載。

將message.js添加到名為lib的文件夾中,以便在流星開始時首先加載它,請參閱http://docs.meteor.com/#/full/examplefilestructure 然后從Message中刪除var,使其變為全局。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM