示例 Meteor 项目
在尝试了解package.js
的工作原理时,我从流星火焰教程中复制了简单的todos示例。
mkdir tempspace
cd tempspace; meteor create simple-todos
cd simple-todos; meteor
然后我在simple-todos目录中创建了文件package.js
,并添加了以下内容:
Package.describe({
name: "demo:todos",
summary: "A zero-config todo",
version: "0.0.1",
git: "not available"
});
然后在终端中收到此错误:
W20170920-13:59:43.473(-7)? (STDERR) /home/myname/.meteor/packages/meteor-tool/.1.5.2.1q1fcxy++os.linux.x86_32+web.browser+web.cordova/mt-os.linux.x86_32/dev_bundle/server-lib/node_modules/fibers/future.js:280
W20170920-13:59:43.491(-7)? (STDERR) throw(ex);
W20170920-13:59:43.496(-7)? (STDERR) ^
W20170920-13:59:43.501(-7)? (STDERR)
W20170920-13:59:43.504(-7)? (STDERR) TypeError: Package.describe is not a function
W20170920-13:59:43.506(-7)? (STDERR) at meteorInstall.package.js (package.js:1:9)
这让我觉得存在导入问题,因为编译器似乎不了解Package.describe
。
这当然是一个模拟问题......真正的问题是发布的包在我的开发环境中与package.js有相同的问题。我想我会简化故障排除并尝试一个已知的好应用程序。
编辑:2017年9月21日
按照@Mikkel的建议:
$ meteor --version
Meteor 1.5.2
$ git clone https://github.com/mikkelking/meteor-presence.git
$ meteor create --bare meteor-presence/
$ cd meteor-presence/
$ meteor
返回完全相同的错误消息:
"/home/myname/.meteor/packages/meteor-tool/.1.5.2.1q1fcxy++os.linux.x86_32+web.browser+web.cordova/mt-os.linux.x86_32/dev_bundle/server-lib/node_modules/fibers/future.js:280"
"TypeError: Package.describe is not a function"
我下载的每个“已知好”项目都存在同样的问题。线索似乎在错误消息的第一行。有些东西未正确传递到future.js的1.5.2版本。嗯。
我是否遗漏了api doc中有关如何添加package.js的内容?
答案 0 :(得分:0)
package.js
用于描述包而不是应用,因此您不应将此文件放在项目的根目录中。
如果您想要一个示例,可以克隆此回购:https://github.com/mikkelking/meteor-presence
这是一个非常简单的包,您可以看到package.js如何用于描述包的部件和功能