2014-05-07 24 views
1

嘗試將我的配置類附加到我的角度應用程序時出現錯誤。我收到一條消息:$injector:nomod] Module 'ngLocale' is not available!我對angular.js和angular-route.js有參考使用TypeScript路由時發生ngLocale錯誤

這是我的配置代碼。

module TSApplication { 
export class Config { 
    static $inject = ["$routeProvider"]; 

    constructor($routeProvider: ng.route.IRouteProvider) { 
     this.registerRoutes($routeProvider); 
    } 

    private registerRoutes(rProvider: ng.route.IRouteProvider) { 
     rProvider.when("/", { templateUrl: "/partials/example.html", controller: "ExampleCtrl" }); 
    } 
    } 
} 

(function() { 
var app = TSApplication.App.angularModule; 

app.config(TSApplication.Config); 
})(); 

這裏是我的應用程序模塊代碼:

module TSApplication { 
"use strict"; 
    export class App { 
     static angularModule = angular.module("App", ['ngRoute']); 
    } 
} 
(function() { 
// Toaster Junk 
})(); 

我失去了一些東西簡單?如果我不包含配置,我不會收到錯誤。

+0

嘗試在'angular.module'調用中將'ngLocale'添加到依賴關係列表中嗎? – Terry

+0

同樣的錯誤@Terry – tympaniplayer

回答

1

看起來你正在將TSApplication.Config傳遞給角度config函數,該函數將它視爲函數。因此,在你的「構造函數」this實際上並不是你認爲的那樣,因爲沒有創建TSApplication.Config的實例。您可以通過將registerRoutes更改爲靜態方法,然後在您的構造函數中調用它來解決此問題,如Config.registerRoutes($routeProvider);

相關問題