2016-04-01 3 views
1

Итак, я обязан преобразовывать es5 в модуль es6.Угловые 1.x и es6 множественные константы в сингулярном модуле

Как экспортировать/импортировать модуль угловой постоянной, если в угловом модуле для ES6 имеется более одной константы?

E.g. constants.js

export default angular.module('myConstants', []) 
    .constant('foo', {result: 'bar'}) 
    .constant('blah', {result: 'bar'}); 

service.js

import foo from './constants'; 
import blah from './constants'; // Tried this. This won't work 

Означает ли это, что я должен разделить свои константы на отдельные модули? Или мне нужно просто преобразовать их в константы ES6, используя ключевое слово const?

P.p.s с использованием Webpack и Бабель погрузчик

P.S. Я должен использовать psuedo-код, так как я не могу вставить код работы.

+0

Эта инструкция экспорта является синтаксической ошибкой. Вы имели в виду использовать 'export default'? – Bergi

+1

Почему вы используете угловые модули, когда у вас есть модули ES6? – Bergi

+0

@Bergi да спасибо. Я обновил его. – chrisjlee

ответ

3

Угловой constant сервис - это всего лишь услуга, которая доступна во время фазы конфигурации и является предлагаемым способом хранения констант модуля (отсюда и название). Это не настоящая константа и может быть перезаписана в любое время с помощью $provide.constant.

Chained angular.module(...)Module object и не имеет смысла в негладком контексте.

Держите отдельный экспорт для Угловых модулей и модулей ES6. Традиционно экспортировать угловой модуль name property, строку, которую можно импортировать и использовать в других модулях семантически.

export const foo = ...; 

export default angular.module('myConstants', []).constant('foo', foo).name; 

import myConstantsMod, {foo} from './constants'; 

angular.module(..., [myConstantsMod])... 

Это зависит от того, что foo импорта для, но, как правило, не по умолчанию импорт ES6/экспорт должен быть ограничен использованием конкретного языка (абстрактные классы, базовые объекты и т.д.) и не следует заменять угловые модульные функциональные возможности, что необходимо благодаря проверке.

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