0

我正在使用 angular、第三方组件和 webpack 开发一个 web 应用程序。

当我在生产模式下捆绑所有内容时,某些组件似乎无法以正确的方式应用它们在开发模式下的样式。例如:

ngx-chips组件。问题在 github 中打开

开发: 生产:

ng2-smart-table组件问题在 github 中打开

开发: 生产:

我根本不确定这是否是自己组件的失败。

这是我正在使用的 webpack.config.common.js

var webpack = require('webpack');
const ExtractTextPlugin = require("extract-text-webpack-plugin");
const extractSass = new ExtractTextPlugin({
    filename: "bundle.css",
    disable: process.env.NODE_ENV === "development"
});

module.exports = {
    entry: {
        'app': './assets/app/main.ts'
    },

    resolve: {
        extensions: ['.js', '.ts']
    },

    module: {
        rules: [
            {
                test: /\.html$/,
                use: [{ loader: 'html-loader' }]
            },
            {
                test: /\.css$/,
                use: [{ loader: 'raw-loader' }]
            },
            {
                test: /\.scss$/,
                use: extractSass.extract({
                    use: [{
                        loader: "css-loader"
                    }, {
                        loader: "sass-loader"
                    }],
                    fallback: "style-loader"
                })
            }]
        ,
        noParse: [
            /aws-sdk/
        ],
        loaders: [
            {
                test: /.json$/,
                loaders: ['json']
            },
        ],
        exprContextCritical: false

    }
};

这是我用来与 webpack 捆绑的脚本:

  "scripts": {
"start": "node ./bin/www",
"build": "del-cli public/js/app && webpack --config webpack.config.dev.js --progress --profile --watch",
"build:prod": "del-cli public/js/app && ngc -p tsconfig.aot.json && ngc -p tsconfig.aot.json && webpack --config webpack.config.prod.js --progress --profile --bail && del-cli 'public/js/app/**/*.js' 'public/js/app/**/*.js.map' '!public/js/app/bundle.js' '!public/js/app/*.chunk.js' 'assets/app/**/*.ngfactory.ts' 'assets/app/**/*.shim.ts' 'assets/app/**/*.ngsummary.json' 'assets/app/**/*.ngstyle.ts'"

我非常感谢您的帮助!

4

0 回答 0