如何解决在角度编译器之前编辑打字稿
我想在 angular 编译器之前剥离 ts 代码。 这是编译前的样子:
...
/* prod:start */
const title: string = "Production title!"
/* prod:end */
/* dev:start */
const title: string = "Dev title!"
/* dev:end */
为了去除 ts 代码,我在自定义 webpack 配置中使用了 webpack-remove-block-loader 加载器
module.exports = {
module: {
rules: [
{
test: /\.ts$/,exclude: /node_modules/,enforce: 'pre',use: [
{
loader: 'webpack-remove-block-loader',options: {
active: true,blocks: excludedClients.blocks,},],plugins: [
new webpack.DefinePlugin({
...
为了使自定义 webpack 工作,我在 angular.json 中使用 @angular-builders/custom-webpack 和这个配置:
"build": {
"builder": "@angular-builders/custom-webpack:browser","options": {
"customWebpackConfig": {
"path": "./custom-webpack.config.js","mergeRules": {
"module": {
"rules": "prepend"
}
},...
问题是它不起作用。如果我从自定义 webpack 配置中删除 enforce: 'pre' 标志,用于去除 ts 代码的加载器 - 它会从已经编译的 ts 文件中删除代码块,这是错误的,否则使用 enforce : 'pre' 它应该在 angular 编译器之前工作,但它没有,代码仍然对两种类型的构建(prod/dev)都有注释。
是的,我知道可以使用 environment.ts
文件中的选项,但它不够灵活。
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。