2015-04-05 12 views
6

Próbuję zaimportować Underscore jako nazwany moduł do mojego addonu Ember CLI. Patrząc na odcinku Standard AMD Asset prowadnic, wydaje się to powinno działać:Jak zaimportować podkreślenie do mojego modułu Ember CLI jako modułu?

app.import(app.bowerDirectory + '/underscore/underscore.js', { 
    exports: { 
    'underscore': ['default'] 
    } 
}); 

Oto linia od Underscore's source:

define('underscore', [], function() { 
    return _; 
}); 

Próbowałem zaimportować go w jednym z moich plików /addon/utils/class.js:

import _ from 'underscore'; 

i dostaje błąd:

Could not find module underscore imported from ember-cli-mirage/utils/class

Co zrobiłem źle?

+0

Dziwne, spróbowałem tego samego, ale nie wpadłem na ten błąd. Instrukcja app.import inicjuje _ jako globalną w mojej aplikacji, natomiast jeśli spróbuję zrobić 'import _ z 'podkreślenia'', aplikacja nie załaduje się wcale. –

Odpowiedz

3

To problem: if (typeof define === 'function' && define.amd)

define.amd jest not zdefiniowane w loader.js Ember-CLI-tych.

Solutions:

  • zawinąć go samemu.
  • Zastosowanie browserify zrobić torebkę dla ciebie
  • Korzystanie LoDash zamiast (to co proponuję - łatwy, peazy, problem rozwiązany & masz czasu na dodatkową rundę mojito w barze na plaży;)).
+1

miło, dzięki! fyi, wierzę, że [ember-przeglądarka] (https://github.com/ef4/ember-browserify) wkrótce zmniejszy te punkty bolesności, ponieważ podkreślnik wyeksportuje również moduł commonjs –

Powiązane problemy