Angularjs 静态Pug/HTML页面的网页包配置
我正在将一个站点转换为使用Webpack,我需要一些配置方面的帮助。我有几页是用英文写的,篇幅很大,很少被访问(想想服务条款或隐私政策)。我的大多数Angularjs 静态Pug/HTML页面的网页包配置,angularjs,webpack,pug-loader,Angularjs,Webpack,Pug Loader,我正在将一个站点转换为使用Webpack,我需要一些配置方面的帮助。我有几页是用英文写的,篇幅很大,很少被访问(想想服务条款或隐私政策)。我的大多数.jade文件都是角度模板,因此这些模板都内联在它们的组件中,并且工作得很好。然而,这几个文件,我希望Webpack编译成静态HTML文件,与应用程序的其余部分分开使用。但是,我仍然希望他们的文件名包含一个散列 我想到的基本想法如下: 在routes.ts中: $routeProvider.when('/_tos', templateUrl: req
.jade
文件都是角度模板,因此这些模板都内联在它们的组件中,并且工作得很好。然而,这几个文件,我希望Webpack编译成静态HTML文件,与应用程序的其余部分分开使用。但是,我仍然希望他们的文件名包含一个散列
我想到的基本想法如下:
在routes.ts中
:
$routeProvider.when('/_tos', templateUrl: require('./resources/terms-of-service.jade'))
在webpack.config.js
的加载程序列表中:
{
test: /resources.*\.jade$/,
loaders: ['file?name=[name].[hash].html', 'pug-html']
}
我尝试了各种组合(有和没有?exports=false
选项)和,但是我尝试的每件事都会在生成的.html
文件中产生额外的工件。例如,它可能以module.exports=
开头,或者它可能将\“
放在文件中应该只有”
的任何地方
有人能帮忙吗?啊!我终于明白了。我从根本上误解了加载程序列表的工作方式。我假设只使用了数组中匹配的第一个加载程序,但是没有,所有匹配的加载程序都被使用。(虽然我还不清楚细节。)下面是一个工作配置,其中
resources
是我的“resources”目录的路径:
loaders: [
{
test: /\.jade$/,
include: [resources],
loaders: ['file?name=[name].[hash].html', 'pug-html?exports=false']
},
{
test: /\.jade$/,
exclude: [resources],
loaders: ['pug-html?doctype=html']
}
]