如何让我的 ember.js 应用程序导入从 bower 或 npm 安装的模块

How do I get my ember.js app to import modules installed from bower or npm

我对其中的一些东西很陌生,我觉得我一定是错过了一些简单的东西。我有一个非常基本的 Ember.js 应用程序,它是我使用 CLI 工具按照指南创建的。代码在 https://github.com/nfriedly/particle-webhook-manager

它有几个路由和组件,以及一个第三方依赖项 particle-api-js。我通过 bower 和 npm 安装了它两次,并将其导入我的组件之一 like so:

import particle from 'particle-api-js';

我用 ember serve 启动了我的服务器,它构建成功。然后我打开我的浏览器到 http://localhost:4200/login 我加载组件的地方,它在我的控制台中给我以下错误:

Error: Could not find module `particle-api-js` imported from `particle-webhook-manager/components/login-form`

所以,我的主要问题是:我做错了什么here/how我能做到吗?

我的第二个问题是:为什么它 "build" 成功,然后为缺少的模块抛出运行时错误 - 它不应该在构建阶段发现吗?

你不应该再使用 bower。使用 ember browserify 导入使用 npm.

安装的东西

您可以使用 app.import('bower_components/...js')ember-cli-build.js 中导入 bower 个模块。

您不能直接 import 它们,但您可以创建一个 vendor shim 来为您提供。查看 ember-cli 文档。