我在使用angularjs浏览页面时遇到了问题。出于某种原因,所有参数都会被输入到ID中。将数据传递到下一页
angular.module("bookapp").controller("Step1Ctrl", function($scope, stepsdata, $state) {
$scope.steps.set(1)
$scope.list = [
{name: 'Chicago', id: 0},
{name: 'APA', id: 1},
{name: 'MLA', id: 2},
{name: 'Harvard', id: 3},
{name: 'Vancouver', id: 4},
// {name: 'Vancouver', id: 5},
]
$scope.nextStep = function(item){
stepsdata.step1 = item.name
if ($state.params.id){
if(item.id == 0){
console.log("Chicago step")
$state.go('app.steps.two',{id: $state.params.id})}
if(item.id == 1){
console.log("APA step")
$state.go('app.steps.two',{id: $state.params.id})}
if(item.id == 2){
console.log("MLA step")
$state.go('app.steps.two',{id: $state.params.id})}
if(item.id == 3){
console.log("Harvard step")
$state.go('app.steps.two',{id: $state.params.id})}
if(item.id == 4){
console.log("Vancouver")
$state.go('app.steps.two',{id: $state.params.id})}
else{
console.log("other city")
}
} else {
$state.go('app.steps.two')
}
}
})
控制台一直说“其他城市”,无论我点击哪个城市。 你能告诉我为什么?
看着好像你$ state.params.id逻辑为空,你可以日志到控制台和检查?所有参数又是什么意思,“抓”到Ids? – raghav710
当我点击芝加哥按钮,控制台说“芝加哥步”和其他城市“,当我点击APA按钮时,控制台说”APA步“和其他城市”...看起来像它从正确的参数,然后一个空参数一直 – lookasz
我认为你在else之前缺少一个右大括号。 “其他城市”与其他什么相匹配? – raghav710