Angularjs 为什么我无法访问控制器ng init上的$stateParams?
我在body标记中使用一个控制器来实例化通过应用程序使用的一些变量,即应用程序中将使用的语言(基于url参数) 这很奇怪,因为我可以看到它使用.lan属性打印$stateParams,但我无法访问它 我还将$stateProvider配置为:Angularjs 为什么我无法访问控制器ng init上的$stateParams?,angularjs,angular-ui-router,Angularjs,Angular Ui Router,我在body标记中使用一个控制器来实例化通过应用程序使用的一些变量,即应用程序中将使用的语言(基于url参数) 这很奇怪,因为我可以看到它使用.lan属性打印$stateParams,但我无法访问它 我还将$stateProvider配置为: $stateProvider .state('root', { url: '/{lan:(?:pt|en)}', abstract: true, template: '<div ui-view=
$stateProvider
.state('root', {
url: '/{lan:(?:pt|en)}',
abstract: true,
template: '<div ui-view=""></div>',
params: { lan: { value: 'pt' } },
})
.state('home', {
parent: 'root',
url: '/',
templateUrl: '/front/main/views/front-main.client.view.html'
});
$stateProvider
.state('根'{
网址:“/{lan:(?:pt|en)}”,
摘要:没错,
模板:“”,
参数:{lan:{value:'pt'}},
})
.州(“家”{
父项:'根',
url:“/”,
templateUrl:“/front/main/views/front main.client.view.html”
});
正确的方法是什么?方法是从此处卸下ng控制器
<body ng-controller="AppCtrl" ng-init="init()">
并将其移动到状态
.state('root', {
url: '/{lan:(?:pt|en)}',
abstract: true,
template: '<div ui-view=""></div>',
params: { lan: { value: 'pt' } },
controller:'AppCtrl'
})
.state('root'{
网址:“/{lan:(?:pt|en)}”,
摘要:没错,
模板:“”,
参数:{lan:{value:'pt'}},
控制器:'AppCtrl'
})
总的来说。。各州的视图
及其控制器
都是关于用户界面路由器世界的。。。而不是AngularJS ng控制器
<body ng-controller="AppCtrl" ng-init="init()">
.state('root', {
url: '/{lan:(?:pt|en)}',
abstract: true,
template: '<div ui-view=""></div>',
params: { lan: { value: 'pt' } },
controller:'AppCtrl'
})