2014-01-24 92 views
2

只是想知道我怎樣纔能有一個對象,在SailsJS中的任何模型,控制器等都可以訪問。我主要需要這些功能,我經常使用它。你認爲這是一個好主意嗎?SailsJS和全局函數,變量

編輯:有什麼推薦的方法做到這一點

+0

然後創建一個全局實用程序對象或使用require或hide作爲另一個全局屬性。 – dandavis

+0

推薦的方式是做什麼,它只是進入bootstrap.js並執行:global.utils = require('lib/utils'); ? –

回答

6

看到帆文檔的documentation for Services。它們聽起來像你正在尋找的東西 - 自定義模塊是全球化的,可在整個應用程序中使用。

+1

我試圖創建一個_.js服務,將lodash的新版本加載到SailsJS中,並且失敗 - 可能是因爲我不知道如何將所有的函數從lodash載入到module.exports = {...}表示法。 很高興看到一個像lodash這樣全球化的例子,特別是與SailsJS的v2.x版lodash沒有衝突。 – ryanm

+1

您應該可以使用[globals配置](http://sailsjs.org/documentation/concepts/globals)關閉默認的Lodash全局。如果您想使用Sails服務來全球化您自己的版本,您可以設置像'module.exports = require('lodash')'這樣的服務。 – sgress454

+1

謝謝sgress454。我確實嘗試過,創建_.js然後lodash.js,但是它在sails-build-dictionary/index.js行失敗120: module.identity = module.identity.toLowerCase(); TypeError'undefined不是函數'。 – ryanm