Ember-CLI 1.13.8
我无法将刚创建的插件加载到单独的测试应用中。 (这是我的第一个插件。)
因为我在本地开发我使用了npm link
,所以:
$ cd ember-cli-foo
$ npm link
$ cd ../test-app
$ npm link ember-cli-foo
npm在node_modules下创建了链接。
插件也有凉亭依赖。我在某处读到了插件目录中的主要index.js应该是这样的:
/* jshint node: true */
'use strict';
module.exports = {
name: 'ember-cli-foo',
included: function(app) {
this._super.included(app);
app.import(app.bowerDirectory + "/foo/web/foo.js");
}
};
蓝图:
module.exports = {
description: ""
afterInstall: function(options) {
return addBowerPackageToProject("foo");
}
};
但是当我尝试运行ember服务时......
Path or pattern "bower_components/foo/web/foo.js" did not match any files
意识到我可能需要指向插件的 bower_components,我尝试在导入路径前加上:
app.import("node_modules/ember-cli-foo/" + app.bowerDirectory + "/foo/web/foo.js");
但那只是让我:
Path or pattern "node_modules/ember-cli-foo/bower_components/foo/web/foo.js" did not match any files
但这条道路是正确的。然后我尝试了:
$ ember install ember-cli-foo
......产生:
Registry returned 404 for GET on https://registry.npmjs.org/ember-cli-foo
谁能告诉我我错过了什么?如何使用本地npm链接将插件安装到测试应用程序中?
也许我离我更近了。我发现这个提示是为了运行蓝图:
$ ember g ember-cli-foo
事实上,恩贝尔回答说,“安装ember-cli-foo”。但是,当我运行ember serve
时,我得到了关于没有找到依赖关系的相同错误,无论我提供它的路径。我找到上述提示的页面与我开始时的内容相同。
执行ember install ember-cli-foo
仍会导致投诉无法在npm的服务器上找到该软件包。
我删除了该应用并重新开始:
$ ember new test
$ cd test
$ npm link ember-cli-foo
$ ember g ember-cli-foo
$ ember serve
...
ENOENT, no such file or directory '/home/bally/dev/apps/test/tmp/concat_with_maps-input_base_path-RopBTsxP.tmp/0/bower_components/foo/web/foo.js'
确实,tmp是空的。
$ ember install ember-cli-foo
同样的抱怨 - 试图远程获取它。
答案 0 :(得分:0)
在本地进行插件开发时,您必须在conusming应用bower.json
引用foo.js
中手动创建条目。不幸的是,在github或npm上存在插件后,你才能ember install ember-cli-foo
。