2016-04-12 76 views
1

我現在使用Sails很多,我有一個練習題。現在,當我想在一個項目中,我把這樣的事情在我config/bootstrap.js文件反覆使用一個NPM包:Sails.js全球參考包

module.exports.bootstrap = function(cb) { 

    sails.Q = require('q'); 
    sails.url = require('url'); 
    ... 

    cb(); 
}; 

我這樣做是爲了使用包就像任何控制器Q,而無需require('q')幾個倍。我只需要sails.Q.[...]就可以了。有沒有更好的方法來實現相同的目標?我寧願能夠參考Q.[...]而不是sails.Q.[...]。有誰知道更好的方法?

回答

-1

你可以做var Q = require('q');app.js服務器啓動之前(即sails.lift(rc('sails'));)。

0

如果它只是拯救按鍵,你真的應該只需要添加

var Q = require('q') 

在每次使用它在文件的頂部。require()不會每次都重新評估模塊。在第一次調用之後,調用它只是從緩存中獲取模塊的輸出,所以每個文件使用一次就沒有開銷。

但是,如果你承認它的不良做法和你沒事帶,你可以出口到全球這樣的:

global.Q = require('q') 

這將允許你在任何文件中引用Q