Чтобы сделать это, я взломал пакет и вытащил из него .js. Этот пакет является лицензией MIT, поэтому мы можем делать все, что захотим. Если вы перейдете на /node_modules/positionsizingcalculator/
, вы найдете index.js
. Откройте это, и вы увидите экспорт moudle, который принимает функцию, которая возвращает объект.
Вы заметите, что это очень похожая модель с .factory
, которая также принимает функцию, которая возвращает объект (или constuctor, в зависимости от вашего шаблона). Так что я хотел бы сделать следующий
.factory('positionsizingcalculator', function(){
basicValidate = function (argument) {
... //Insert whole declaration in here
return position;
})
и закачку его, где вам это нужно:
.controller('AppController', function(positionsizingcalculator){
//use it here as you would in node after you inject it via require.
})
- Edit: Это хорошо для единовременных захватов в JS, но если вы хотите более расширяемое решение, http://browserify.org/ - лучшая ставка. Это позволяет вам преобразовывать ваши требования в единый пакет. Обратите внимание, что это может привести к выделению гораздо большего количества кода, который вам может понадобиться, если вы сделаете один пакет для всего вашего сайта, поскольку это не так, AMD, и вам нужно загрузить все, что вам может понадобиться, если вы не делаете связки страниц.
Вы по-прежнему хотите выполнить требование в factory
и вернуть его, чтобы сохранить его в ракурсе инъекции зависимых углов.
Можно ли предположить, что ваш бэкэнд является приложением Node? –
@ Майкл Бенфорд. Не могли бы вы рассказать о том, какая разница? – fred
Я просто хотел узнать, подаете ли вы свое угловое приложение из приложения Node, поэтому я мог бы предложить что-то вроде Browserify (как это сделал @Dylan Watt). –