ฉันมีแอปพลิเคชัน Angular ที่ค่อนข้างเรียบง่ายซึ่งทำงานได้ดีบนเครื่อง dev ของฉัน แต่ล้มเหลวด้วยข้อความแสดงข้อผิดพลาดนี้ (ในคอนโซลเบราว์เซอร์) หลังจากที่ฉันปรับใช้:
Uncaught Error: [$injector:unpr] http://errors.angularjs.org/undefined/$injector/unpr?p0=tProvider%20%3C-%20t%20%3C-%20%24http%20%3C-%20%24compile
ไม่มีข้อความอื่นนอกเหนือจากนั้น เกิดขึ้นเมื่อโหลดหน้าเว็บครั้งแรก
ฉันใช้ ASP.NET MVC5, Angular 1.2RC3 และกดไปที่ Azure ผ่าน git
Googling ไม่ได้เปิดเผยสิ่งที่น่าสนใจ
ข้อเสนอแนะใด ๆ ?
แก้ไข:
ฉันใช้ TypeScript และกำหนดการอ้างอิงของฉันด้วย$inject
ตัวแปรเช่น:
export class DashboardCtrl {
public static $inject = [
'$scope',
'$location',
'dashboardStorage'
];
constructor(
private $scope: IDashboardScope,
private $location: ng.ILocationService,
private storage: IDashboardStorage) {
}
}
ฉันเชื่อว่าควร (หรือมีวัตถุประสงค์เพื่อ) แก้ไขปัญหาการเปลี่ยนชื่อตัวแปรท้องถิ่นที่เกิดขึ้นระหว่างการลดขนาดและอาจทำให้เกิดข้อผิดพลาดนี้
ที่กล่าวว่ามีบางอย่างเกี่ยวข้องกับกระบวนการลดขนาดอย่างชัดเจนเช่นเมื่อฉันตั้งค่าBundleTable.EnableOptimizations = true
บนเครื่อง dev ฉันสามารถสร้างซ้ำได้
$inject
ตัวแปรสาธารณะซึ่งฉันเชื่อว่าเทียบเท่ากับวิธีที่คุณแนะนำ (ดูdocs.angularjs.org/guide/di ) ฉันจะอัปเดตคำถามของฉัน