2015-12-04 3 views
1

Внутри моего компонента, у меня естьИмпорт НПМ установленных библиотек для использования в ember.js

didInsertElement: function() { 

    $('#' + this.idVal).tokenfield({ 
     autocomplete: { 
     source: ['red','blue','green','yellow','violet','brown','purple','black','white'], 
     delay: 100, 
     minLength: 1, 
     }, 
     showAutocompleteOnFocus: true 
    }); 

Я пытаюсь использовать npm пакет https://www.npmjs.com/package/bootstrap-tokenfield.

Однако я заметил, что $().tokenfield() не определено, что означает, что я не импортирую его должным образом. Я попытался добавить его к ember-cli-build.js, но я заметил, что он, вероятно, импортирует bootstrap-tokenfield перед jquery, что вызывает проблемы. (В этом случае ember.build.js импортирует эти файлы до каких-либо зависимостей?)

Я должен импортировать bootstrap-tokenfield в компоненте как-то, если я пытаюсь использовать его с установкой npm?

Я использую Ember 2.1.0.

ответ

1

если вы хотите импортировать пакет НПМ Ember кода на стороне клиента, вы можете использовать уголек-browserify (https://github.com/ef4/ember-browserify), внутри вашего проекта вы можете просто сделать

import MyCoolModule from "npm:my-cool-module";

+0

Спасибо Бека, я дам ему пытаться. Поэтому я заметил, что, например, jquery доступен для кода клиента Ember. Какие библиотеки JavaScript доступны по умолчанию? –

+0

По умолчанию доступен только jquery, но вы можете добавить любые клиентские библиотеки с помощью bower, тогда вам нужно будет импортировать их в файл ember-cli-build.js здесь (http://ember-cli.com/managing-dependencies/) – Bek

+0

Спасибо, очень ценю помощь. Как узнать, откуда вытаскивается модуль? Например, я получаю следующее: 'Не могу найти модуль 'jquery' from '/ node_modules/jquery-ui''. В моем компоненте я импортирую jQueryUI из «npm: jquery-ui»; '. Почему он ищет модуль 'jquery'? –

Смежные вопросы