簡體   English   中英

AngularJS應用程序MVC4捆綁剎車應用程序

[英]AngularJS app MVC4 bundling brakes app

我正在ASP.NET MVC內的一個大angularJS應用程序上工作,當我使用腳本標簽一個一個地包含腳本時,一切正常,但沒有任何問題,但是一旦我通過web.optimization啟用捆綁和最小化,某些控制器就無法解決和應用剎車。

            var scriptBundle = new ScriptBundle("~/bundle/app")
            .Include("~/App/app.js")
            .IncludeDirectory("~/App", "*.js", true);

這就是我注冊捆綁包的方式。 完成第一件事后,加載應用后我在控制台中看到的是

Error: [$injector:nomod] http://errors.angularjs.org/1.5.5/$injector/nomod?p0=app

和INS一些控制器,我得到以下錯誤。

Argument 'ControllerName' is not a function, got undefined

這是非常奇怪的,因為當我查看已加載的腳本時,該控制器肯定是已加載的控制器。

當聲明angularjs控制器時,我使用以下模式。

marketConfigWizardCtrl.$inject = ['$scope', 'close'];
angular.module('PcoreManager').controller('marketConfigWizardCtrl', marketConfigWizardCtrl);

function marketConfigWizardCtrl($scope, close){
}

您是否嘗試過這種模式?

var MyController = function($scope, greeter) {
  // ...
}
MyController.$inject = ['$scope', 'greeter'];
someModule.controller('MyController', MyController);

根據文檔: https : //docs.angularjs.org/guide/di

為了允許Minifier重命名函數參數並仍然能夠注入正確的服務,需要使用$ inject屬性對函數進行注釋。 $ inject屬性是要插入的服務名稱的數組。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM