ผมได้รับข้อผิดพลาดนี้เมื่ออัพเกรดจาก AngularJS 1.0.7เพื่อ1.2.0rc1
ผมได้รับข้อผิดพลาดนี้เมื่ออัพเกรดจาก AngularJS 1.0.7เพื่อ1.2.0rc1
คำตอบ:
โมดูล ngRoute ไม่ได้เป็นส่วนหนึ่งของangular.js
ไฟล์แกนอีกต่อไป หากคุณยังคงใช้ $ routeProvider ต่อไปคุณจะต้องรวมangular-route.js
ไว้ใน HTML ของคุณ:
<script src="angular.js">
<script src="angular-route.js">
คุณต้องเพิ่มngRoute
เป็นการอ้างอิงสำหรับแอปพลิเคชันของคุณ:
var app = angular.module('MyApp', ['ngRoute', ...]);
หากคุณวางแผนที่จะใช้งานangular-ui-router
หรือสิ่งที่คล้ายกันเพียงแค่ลบการ$routeProvider
พึ่งพาจากโมดูลของคุณ.config()
และแทนที่ด้วยผู้ให้บริการที่เกี่ยวข้องในการเลือก (เช่น$stateProvider
) จากนั้นคุณจะใช้การui.router
พึ่งพา:
var app = angular.module('MyApp', ['ui.router', ...]);
ui.state
ไวยากรณ์เก่าเมื่อฉันอัปเกรดแอปของฉันจากangular-ui-router
v0.0.1เป็นv0.2.0ซึ่งหมายความว่าตอนนี้มันใช้ui.router
ชื่อ ฉันขอโทษสำหรับความสับสนใด ๆ ที่เกิดขึ้น
angular-route.js
ใด
angular-route
ให้ที่อยู่ CDN เช่นเดียวกับตัวเลือกอื่น ๆ สำหรับตอนui-router
นี้ไม่มี CDN ที่ฉันรู้
ui-router
ดูเหมือนจะไม่ได้อยู่ใน CDN ของตัวเองแม้ว่าจะอยู่ใน cdnjs: cdnjs.com/l ไลบรารี/angular
เพิ่มคำตอบของสก็อต:
ตัวเลือก 1: รวมไว้ในไฟล์ JS ของคุณ:
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js"></script>
ตัวเลือกที่ 2: หรือใช้ URL เพื่อดาวน์โหลด ' angular-route.min.js ' ไปยังพื้นที่ของคุณ
จากนั้น (สิ่งใดก็ตามที่คุณเลือก) เพิ่ม 'ngRoute' นี้เป็นการอ้างอิง
อธิบายว่า:
var app = angular.module('myapp', ['ngRoute']);
ไชโย !!!
ในกรณีของฉันมันเป็นเพราะไฟล์ถูกลดขนาดด้วยขอบเขตที่ไม่ถูกต้อง ใช้ Array!
app.controller('StoreController', ['$http', function($http) {
...
}]);
ไวยากรณ์กาแฟ:
app.controller 'StoreController', Array '$http', ($http) ->
...
ui-router
โครงการอาจเป็นทางเลือกที่ยืดหยุ่นมากขึ้นถ้าคุณเริ่มต้นจากศูนย์ ( github.com/angular-ui/ui-router )