Javascript 未知提供程序:$stateProvider
我真的不明白为什么这个标记不能识别我的$stateProviderJavascript 未知提供程序:$stateProvider,javascript,html,angularjs,Javascript,Html,Angularjs,我真的不明白为什么这个标记不能识别我的$stateProvider Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to: Error: [$injector:unpr] Unknown provider: $stateProvider 简单模块: (function () { 'use strict'; // get modules we need for the app angular
Uncaught Error: [$injector:modulerr] Failed to instantiate module app due
to: Error: [$injector:unpr] Unknown provider: $stateProvider
简单模块:
(function () {
'use strict';
// get modules we need for the app
angular.module('app', ['ngRoute'])
.config(config);
config.$inject = ['$stateProvider']
function config($stateProvider) {
console.log('works'); // actually doesn't
};
})();
我试过其他各种款式
例如在配置中直接加载它们
.config(['$stateProvider'], function ($stateProvider) {
// not working this way either.
});
您使用的是
ngRoute
,因此必须使用$routeProvider
。$stateProvider
基于ui路由器
。请检查此项并切换到$routeProvider
,或将ui路由器
与$stateProvider
结合使用
配置 这是一个
ngRoute
实现的过程
/* App Module */
angular.module('demoApp', ['ngRoute'])
.config(['$routeProvider', function( $routeProvider) {
// Define routes
$routeProvider.when('/homepage', {
templateUrl: 'partial/homepage.html',
controller: HomePageCtrl
}).when('/users', {
templateUrl: 'partial/users.html',
controller: UsersListCtrl
}).when('/contacts',{
templateUrl: 'partial/contacts.html',
controller: ContactPageCtrl
}).otherwise({
redirectTo: 'homepage'
});
}
]);
var myApp = angular.module("myApp",["ui.router"])
.config(function ($stateProvider, $urlRouterProvider){
$stateProvider.state("state1", {
url: "#",
template: "<p>State 1</p>",
controller: "Ctrl1"
}).state("state2", {
url: "#",
template: "<p>State 2</p>",
controller: "Ctrl2"
});
});
配置 这是一个
ui路由
实现
/* App Module */
angular.module('demoApp', ['ngRoute'])
.config(['$routeProvider', function( $routeProvider) {
// Define routes
$routeProvider.when('/homepage', {
templateUrl: 'partial/homepage.html',
controller: HomePageCtrl
}).when('/users', {
templateUrl: 'partial/users.html',
controller: UsersListCtrl
}).when('/contacts',{
templateUrl: 'partial/contacts.html',
controller: ContactPageCtrl
}).otherwise({
redirectTo: 'homepage'
});
}
]);
var myApp = angular.module("myApp",["ui.router"])
.config(function ($stateProvider, $urlRouterProvider){
$stateProvider.state("state1", {
url: "#",
template: "<p>State 1</p>",
controller: "Ctrl1"
}).state("state2", {
url: "#",
template: "<p>State 2</p>",
controller: "Ctrl2"
});
});
var myApp=angular.module(“myApp”、[“ui.router”])
.config(函数($stateProvider,$urlRouterProvider){
$stateProvider.state(“state1”{
网址:“#”,
模板:“状态1”,
控制器:“Ctrl1”
}).state(“state2”{
网址:“#”,
模板:“状态2”,
控制器:“Ctrl2”
});
});
尝试.config(['$stateProvider',function($stateProvider){…}])
在您提到的第二种样式的函数之前使用]
angular.module('app',['ngRoute']).config(['$stateProvider',function($stateProvider){}])代码>这导致了相同的错误。那么一定是其他问题。确保您确实有可用的$stateProvider
。。脚本还没有加载,或者脚本src中有一些输入错误?这是正确的,我当时正在匆忙使用ngRoute,而我本应该使用angular ui路由器,问题已经解决。“谢谢你!”波帕德很高兴帮助你。