我一直在尝试为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
。
任何帮助或提示都会非常感激。
由于
贾尔斯
答案 0 :(得分:5)
您还需要修改skel.min.js
/ skel.js
在包中,变量作用域仍然适用,因此如果您希望文件允许其他文件(例如var
package.js
)访问其变量,则必须删除api.export
关键字。 / p>
修复方法是改变:
var skel=function() ....
到
skel=function() ....