angular2-webpack-starter定制生产baseUrl的最佳方式

时间:2017-01-21 18:31:06

标签: angular webpack html-webpack-plugin

我正在使用angular2-webpack-starter 5.4.1。 https://github.com/AngularClass/angular2-webpack-starter

要为生产版本自定义baseUrl,请在config / webpack.prod.js中重复在config / webpack.common.js中完成的操作。

const METADATA = {
  title: 'Angular2 Webpack Starter by @gdi2290 from @AngularClass',
  baseUrl: '/apps/awesomeapp',
  isDevServer: helpers.isWebpackDevServer()
};

然后:

new HtmlWebpackPlugin({
    template: 'src/index.html',
    title: METADATA.title,
    chunksSortMode: 'dependency',
    metadata: METADATA,
    inject: 'head'
  }),

这有效,但味道很糟糕。理想情况下,我只需要更改config / webpack.prod.js中的METADATA.baseUrl变量。

有没有人找到更好的方法?

1 个答案:

答案 0 :(得分:0)

您可以执行我为PostCSS配置所做的工作。

const postcssShared = [
    require("level4")()
];

const postcssProduction = [
    require("css-mqpacker")(),
    require("postcss-fixes")(),
    require("postcss-mq-keyframes")(),
    require("postcss-will-change")(),
    require("postcss-cssnext")({
        browsers: [ ">2%" ]
    }),
    require("postcss-discard-comments")(),
    require("cssnano")({
        autoprefixer: false,
        calc: false,
        safe: true
    })
];

module.exports = {
    development: postcssShared,
    production: postcssShared.concat(postcssProduction)
};

这样做的基础是导入导入用于开发构建的生产构建和开发的生产配置。