【问题标题】:Import angularjs minified version导入 angularjs 缩小版
【发布时间】:2016-12-11 19:52:23
【问题描述】:

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

import angular from 'angular';

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

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

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

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

【问题讨论】:

    标签: javascript angularjs webpack exports-loader


    【解决方案1】:

    我找到了github issue 来解决这个问题,最好使用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';
    

    【讨论】:

    • 从 Webpack 2 开始,您在指定加载程序时需要一个“-loader”前缀,所以它是:loader: 'exports-loader?angular'。您还需要npm install --save-dev exports-loader
    【解决方案2】:

    U 可以使用 Angular cli,只需键入

    ng build -prod

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

    【讨论】:

    • 谢谢,我使用 angular 1.x
    • 投反对票,因为他没有意识到他问的是 AngularJS,而不是 Angular。
    猜你喜欢
    • 1970-01-01
    • 2015-01-24
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    • 1970-01-01
    • 2017-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多