Search code examples
javascriptember.jsember-cli

After update ember-cli 2.11.0 version how to npm instead of bower?


When I updated ember-cli to 2.11.0 and I found EMBER NO LONGER SUPPLIED VIA bower. So I check npm instead of bower, but I don't know what to do.

Such as moment.js use bower look like:

bower.json

"dependencies": {
  ...
  "moment": "2.14.1"
}

ember-cli-build.js

...
app.import('bower_components/moment/moment.js');
...

.jshintrc

...
"moment": true,
...

This way can run in help and controller.

But I use npm and set ember-cli-build.js code app.import('node_modules/moment/moment.js'); had errors.

And cssaslo have this problem.

What is best way to npm instead of bower in ember-cli? Thanks.


Solution

    1. Through ember-browserify

      npm install ember-browserify --save-dev
      npm install moment --save-dev

    you can import it by import moment from 'npm:moment'

    1. Try ember-cli-moment-shim
    2. ember packages are not served through bower. It does not mean you can't use bower at all. You can still use bower.json and include it like you did.
    3. You can have it in vendor folder and include it ember-cli-build.js file . but for moment.js inclusion. this is not the right way.

    I prefer 1 or 2 options. and 3 and 4 is not applicable in this case.