我试图设置一个演示来展示我与兄弟组件/状态有关的问题。
但遇到此错误:
不知道这里会出现什么问题,因为这就是我们当前应用中的方式:
params: {
ticker: 'AAA'
}
https://plnkr.co/edit/zfmuZXp88cSbdOsibv3y?p=preview
var routerApp = angular.module('routerApp', ['ui.router']);
routerApp.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/dash');
var dash = {
name: 'dash',
url: '/dash?ticker',
// params: {
// ticker: 'AAA'
// },
views: {
'': { templateUrl: 'partial-dash.html' },
'tagsList@dash': {
templateUrl: 'tags-list.html',
controller: 'tagsController'
},
'tickersList@dash': {
templateUrl: 'tickers-list.html',
controller: 'tickersController'
}
}
};
$stateProvider
.state(dash);
});
routerApp.controller('tagsController', function($scope) {
$scope.tags = [
'tag 1', 'tag 2', 'tag 3'
];
$onInit = function() {
console.log('onInit tagsController');
};
});
routerApp.controller('tickersController', function($scope, $state) {
// $scope.changeScotchState = function() {
// $state.go('about', { scotch: true });
// };
$scope.tickers = [
'AAA', 'BBB', 'CCC'
];
$onInit = function() {
console.log('onInit tickersController');
console.log('$state.ticker', $state.params.ticker)
};
});
答案 0 :(得分:2)
啊我使用的是旧版本的ui-router。
切换到此,现在支持params var:
https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.4.2/angular-ui-router.min.js