导入 angularjs 缩小版

Import angularjs minified version

我正在使用 webpack,angular 1.x 并且有以下代码

import angular from 'angular';

效果很好,但问题是包含的文件太大 (angularjs - 1.15mb)。当然,使用缩小版的 angularjs 会更好,但是当我将代码更改为

import angular from 'angular/angular.min.js';

它不能正常工作,我的意思是它似乎 angular.min.js 没有导出适当的 angular 对象。

使用压缩版库的正确方法是什么?

你可以使用 angular cli 并输入

ng 构建-prod

然后你的缩小文件在 dist 文件夹中。它必须更小,你可以上传你的 public_html

我找到了 github issue regarding the problem, it's good idea to use exports-loader。我的解决方案是:

webpack.config.js

...
// Add alias, so webpack looks for minified version of angular
resolve: {
    alias: {
        angular: "angular/angular.min.js"
    }
}

...
// Add exports loader for angular
modules: {
    loaders: [
        {
            test: /angular\.min\.js$/,
            loader: 'exports?angular'
        }
    ]
}

完成此配置后,我们可以使用以下命令轻松导入 angular 的缩小版本

let angular = require('angular');

// or es6 version

import angular from 'angular';