我有一个角度2项目,最初用于捆绑与systemjs的作品。
现在我想使用webpack捆绑这个项目。
但是原始代码有很多这样的字符串。比如
我想用文件所在的绝对目录替换所有字符串。原始时间,产品模式或开发模式,此字符串将替换为路径字符串。
现在我想在编译.ts文件之前使用webpack替换此字符串。我应该使用什么样的插件?
例如: login.module.routing.ts
{路径:'登录',/ app / src /登录#LoginModule},
我想在使用webpack编译之前替换。
例如:{path:' login',/ root / myproject / app / src / login#LoginModule},
非常感谢!
答案 0 :(得分:4)
对于此要求,您可以使用string-replace-webpack-plugin。
用法示例:
var StringReplacePlugin = require("string-replace-webpack-plugin");
module.exports = {
module: {
loaders: [
// configure replacements for file patterns
{
test: /index.html$/,
loader: StringReplacePlugin.replace({
replacements: [
{
pattern: /<!-- @secret (\w*?) -->/ig,
replacement: function (match, p1, offset, string) {
return secrets.web[p1];
}
}
]})
}
]
},
plugins: [
// an instance of the plugin must be present
new StringReplacePlugin()
]
}
我希望这有助于解决您的问题。