экспорт по умолчанию не объявляется в импортируемом модуле

0

Я использую ES6 в IntelliJ IDEA. Ниже приведен фрагмент кода.

import controller from './tpmInfo.ctrl.js'
import template from './tpmInfo.tpl.html' //default export is not declared in imported module

export default angular.module('tmpApp', [])
    .component('tpmInfo', {
        template: template,
        controller: controller,
        bindings: {
            ags: '='
        }
    })
.name;

template html является обычным html, но IntelliJ IDEA выдает предупреждение: "Экспорт по умолчанию не объявлен в импортированном модуле". Есть ли способ устранить это предупреждение? Благодарю.

  • 0
    Вероятно, ожидается, что ./tpmInfo.tpl.html будет преобразован в модуль ES6, а не в какой-либо другой произвольный ресурс, предоставленный вашим загрузчиком.
Теги:
ecmascript-6
webstorm
intellij-idea
phpstorm

2 ответа

2
Лучший ответ

попробуй это:

import * as tpl from './tpmInfo.tpl.html'

и затем используйте его следующим образом:

template: tpl.template,

Дайте мне знать, если это сработает для вас.

  • 0
    Кстати, какой загрузчик модулей или пакетов вы используете? SystemJs? Webpack?
  • 0
    Мы используем Webpack.
Показать ещё 3 комментария
1

Для проектов Angular2-Meteor мне приходилось делать, как говорит Вассим, с небольшими изменениями:

import * as tpl from './tpmInfo.tpl.html'
а затем в компоненте
template: tpl.default

или же

import * as templatefrom './tpmInfo.tpl.html';  
template = template.default;

  @Component({
   //smth,      
    template
  })

это строка, возвращаемая angular2-compilers

Ещё вопросы

Сообщество Overcoder
Наверх
Меню