【问题标题】:Trying to create a Meteor Package尝试创建 Meteor 包
【发布时间】:2014-01-13 05:58:58
【问题描述】:

我一直在尝试为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

任何帮助或提示将不胜感激。

谢谢

贾尔斯

【问题讨论】:

    标签: javascript meteor meteorite


    【解决方案1】:

    还需要修改skel.min.js/skel.js的第一行

    包内变量范围仍然适用,因此如果您希望文件让其他文件(例如 package.js 用于 api.export)访问其变量,则必须删除 var 关键字。

    解决办法是改变:

    var skel=function() ....
    

    skel=function() ....
    

    【讨论】:

    • 太好了,谢谢 Akshat。我不知道你必须这样做,是不是我一定错过了文档中的某个地方?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多