* Note:代碼是用TypeScript編寫的,下面的代碼是編譯好的javascript - 如果需要,我可以提供TypeScript。Inline Annotations與AngularJs指令
我想用grunt-contrib-uglify(mangle:true,beautify:true)縮小一個名爲bundle.js的文件,它包含我們需要用於AngularJs應用程序的所有編譯TypeScript。當運行應用程序時,我遇到了錯誤「Unknown provider:bProvider <-b」,並且能夠找到違規指令。
的指令下面沒有內嵌註解,所以我更新的代碼,讓他們:
appDirectives.directive('emailShareModal', ['$rootScope', '$compile', '$timeout', 'httpService', 'shareFromEmailService', function ($rootScope, $compile, $timeout, httpService, shareFromEmailService) {
return {
scope: {
type: '@type',
id: "=id",
defaultBody: "=body",
title: '@title'
},
link: function ($scope, element, attr) { return new emailShareModalDirective($scope, $rootScope, element, attr, $compile, $timeout, httpService); },
controller: function ($scope) { return new experienceShareForm($rootScope, $scope, shareFromEmailService); }
};
}]);
現在,如果我刪除了「控制器」屬性,該指令不拋出一個異常,告訴我的鏈接屬性配置正確。 - 沒有人看到什麼不對勁
var experienceShareForm = (function() {
function experienceShareForm($rootScope, $scope, shareFromEmailService) {
var _this = this;
this.$rootScope = $rootScope;
this.$scope = $scope;
this.shareFromEmailService = shareFromEmailService;
}
return experienceShareForm;
})();
我茫然了可能是與代碼的問題:這裏是experienceShareForm對象由控制器屬性實例化?非常感謝。
您可以將'ng-strict-di'添加到與您的'ng-app'相同的元素,以對任何有問題的代碼進行角度強制依賴注入和輸出控制檯警告。 – Claies