我正在尝试使用html-loader + webpack 5加载 AngularJs 应用程序模板(html) 。许多人抛弃了模板缓存,偏向于 html-loader。但就我而言,我真的无法让它发挥作用。
我什至也尝试过 raw-loader、angularjs-template-loader 和 ngtemplate-loader。但是 webpack 总是抱怨 loader。
错误:“模块解析失败:意外令牌 (1:0) 您可能需要适当的加载程序来处理此文件类型,目前没有配置加载程序来处理此文件。请参阅https://webpack.js.org/concepts#loaders "
> <div class="panel">
| <div class="panelContent gridContainer">
| <div class="dataGridHeader">
这是我的 weback.config.js:
module:{
rules: [
{
test: /\.html$i/,
loader: 'html-loader',
// use: [
// // {
// // loader: "ngtemplate-loader",
// // options: {
// // relativeTo: "src/",
// // },
// // },
// // "ngtemplate-loader",
// // "raw-loader",
// {
// loader: "html-loader",
// options: {
// minimize: true,
// },
// },
// ],
},
]
}
指令:
const directive = {
restrict: "E",
template: require("ROOT/app/views/templates/dataGrid.html"),
controller: dataGridController,
controllerAs: "vm",
bindToController: true
}
return directive;
我在上面的 webpack 配置文件中尝试了注释选项,但都导致了相同的错误。
我的 package.json:
Portion of devDependencies:
"devDependencies": {
"@babel/cli": "^7.0.0",
"@babel/core": "^7.11.1",
"@babel/plugin-syntax-dynamic-import": "^7.8.3",
"@babel/preset-env": "^7.11.0",
"angularjs-template-loader": "^0.1.2",
"babel-loader": "^8.0.0",
"html-loader": "^2.1.2",
"ngtemplate-loader": "^2.1.0",
"raw-loader": "^4.0.2",
"speed-measure-webpack-plugin": "^1.5.0",
"webpack": "^5.36.2",
"webpack-cli": "^4.7.0",
"webpack-dev-server": "^3.11.2",
"webpack-merge": "^5.7.3"
}
有人面临这个问题吗?