2014-01-12 66 views
0

我一直在試圖爲SkelJS框架創建一個智能包。 該文件正在被瀏覽器加載,但是當我嘗試訪問該對象時,它將其導出爲undefined。我使用的package.js下面的代碼:試圖創建一個流星包

Package.describe({ 
    summary: "SkelJS for Meteor" 
}); 

Package.on_use(function (api) { 
    api.use('jquery', 'client'); 
    api.add_files(['skel.js'], 'client'); 

    api.export('skel', 'client'); 
}); 

也試圖訪問Package.skeljs.skel回報undefined爲好。

在smart.json我使用:

{ 
    "name": "skeljs", 
    "description": "SkelJS for Meteor", 
    "homepage": "", 
    "author": "Giles Butler (http://giles.io)", 
    "version": "0.1.0", 
    "git": "" 
} 

我知道SkelJS已經被加載,因爲它記錄到控制檯no configuration detected, waiting for manual init但後來當我嘗試運行skel.init()返回undefined

任何幫助或提示將非常感激。

感謝

賈爾斯

回答

5

您還需要修改的skel.min.js/skel.js

第一線內包變量範圍仍然適用,所以你必須,如果你想要的文件,以去除var關鍵字讓其他文件(如package.jsapi.export)訪問其變量。

的解決將是改變:

var skel=function() .... 

skel=function() .... 
+0

優秀,感謝Akshat。我不知道你必須這樣做,是否在文檔中某處,因爲我一定錯過了它? –