У меня есть следующий конфиг веб-пакета для моих html-файлов.Это
{
test: /^(?!.*index).*(html)$/,
use: [
{
loader: 'file-loader',
options: {
name: '[name].[ext]?[hash]',
}
},
{
loader: 'extract-loader'
}, {
loader: 'html-loader',
}
]
},
Загрузчик html загружает мои импортированные html-файлы, загрузчик извлечения считывает html, а загрузчик файлов записывает их в мой выходной каталог, добавляя хэш.Пока все хорошо.
Теперь в моем приложении angularjs мне нужно сослаться на эти файлы следующим образом:
import './dashboard.html'
[...]
export let DashboardComponent: IComponentOptions = {
templateUrl: 'dashboard.html',
controller: CommonDashboardComponentController,
};
Это работает, но я потеряю преимущество хэша.
Если я импортирую html-файлы следующим образом:
import * as template from './dashboard.html';
Я могу использовать template в качестве tempateUrl.Но машинопись будет жаловаться.
Когда я использую переключатель exportAsEs6Default с загрузчиком html, я могу выполнить импорт следующим образом:
import template from './dashboard.html'
Ис типом файла типа this, Я могу использовать template как templateUrl в моем компоненте.
Но загрузчик extract не работаетс экспортом по умолчанию и выдает SyntaxError: Неожиданный экспорт токена при попытке проанализировать экспорт по умолчанию.
Если я использую только html-загрузчик и вместо него использую template templateUrl это только работает.Но я действительно хочу иметь отдельные HTML-файлы в моей выходной директории.Я немного заблудился здесь и был бы признателен за любые советы.: -)