尝试将我的前端包从凉亭移到npm是不对的?

时间:2017-03-16 15:00:52

标签: ember.js npm bower npm-install bower-install

我对ember很陌生,当我开始遇到一个问题时,我尝试构建一个小的待办事项列表应用程序,我尝试通过bower install moment安装时刻包但不知何故导入包进入 ember-cli-build.js 的包没有用。我遇到了一个解决方案,说我应该npm install moment运行它,这对我有用。 在上述事件之后,我尝试从bower_components中删除moment包并将路径更改为node_modules。虽然这没有用,但却打破了我的应用程序。我收到以下错误:

The Broccoli Plugin: [SourceMapConcat: Concat: Vendor /assets/vendor.js] failed with: 

Error: ENOENT: no such file or directory, open '/Users/kshitij/scratch/ember-projects/em-app/tmp/source_map_concat-input_base_path-UJQvdiAo.tmp/node_modules/moment/min/moment.min.js  

我的问题:尝试将bower包移动到npm是否正确?如果是,那么为什么在这种情况下不能解决?

注意:我也可以通过在应用程序目录中的 .jshint.rc 文件的“predef”块添加“moment”来解决问题,但我想知道为什么npm方法成功,以及为什么将时刻包完全从bower移植到npm不起作用。

1 个答案:

答案 0 :(得分:1)

ember-cli-build.js中,您只能提及vendor文件夹或bower_components文件夹,您不能提及node_modules文件夹。

您无需执行npm install momentbower install moment即可安装时刻套件到ember,您可以ember install ember-moment执行相当于npm install ember-moment --save-dev和{{1}的操作}}

请参阅this answer了解可能的方式,包括时刻套餐。