angularjs - Angular UI 模态在 grunt 构建后不会出现

标签 angularjs modal-dialog

我正在为我的项目使用 Angular ui Bootstrap。模式工作正常,但是当我使用 grunt build 命令进行构建时,模式停止出现。任何人都可以帮助我吗?我已经有类似的问题angular-ui-bootstrap causes unknown provider error when minified但至今尚未找到满意的答案。谁能帮我 ?提前谢谢.. 我的 Bower.json 文件如下所示:

    {
        "name": "client",
        "version": "0.0.0",
        "dependencies": {
        "angular": "1.2.6",
        "json3": "~3.2.6",
        "es5-shim": "~2.1.0",
        "angular-resource": "1.2.6",
        "angular-sanitize": "1.2.6",
        "angular-route": "1.2.6",
        "angular-bootstrap": "~0.10.0",
        "bootstrap": "~3.1.1",
        "underscore": "~1.6.0",
        "d3": "~3.4.1",
        "angular-touch": "~1.2.16",
        "deepcopy": "~0.3.2"
  },
   "devDependencies": {
        "angular-mocks": "1.2.6",
        "angular-scenario": "1.2.6"
     }
   }

最佳答案

我也遇到这个问题了。我发现问题是由 minify 进程引起的,因为它重命名了函数的参数,因此,例如,由于 Angular 无法找到提供程序“a”,模式停止正常工作。

修复非常简单。只需使用数组而不是函数来声明您的模态 Controller 。

示例:

var modal = $modal.open({
    templateUrl: 'partials/modal.html',
    controller: MyModalCtrl
});
var MyModalCtrl = [
    '$scope',
    '$modalInstance',
    function($scope, $modalInstance){
        ...
    }
];

如果您要缩小代码,强烈建议使用数组声明语法。

希望这能解决您的问题。

关于angularjs - Angular UI 模态在 grunt 构建后不会出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23868092/

相关文章:

javascript - 使用没有插件的 angularjs 缓存图像

javascript - Jquery 打开一个自定义模式链接而不是弹出窗口制造商的主题标签

html - Bootstrap 模式错误定位

C++ 我的表单应该位于各种窗口之上

javascript - angularJS - ng-model 没有更新

javascript - 如何替换已排序的 JS 数组中的值?

javascript - Uncaught ReferenceError : module is not defined

angularjs - 访问由于 Angular ui 选项卡隔离/继承范围而隐藏的表单 Controller

objective-c - runModalForWindow 限制 http 请求

javascript - 灵活宽度居中模态窗口