现象如图所示,原本我是直接通过 switch 对 vm.pageIndex 进行赋值运算的,但是不成功,所以我引入了一个中间变量p以便更好的去观察,结果依然不成功,效果如下:

接着,我将这段代码放在一个干净的测试页面中,发现一切正常,但这段代码中间并没有任何其它干扰因素啊,为什么会出现这种情况。干净代码:vm.pageIndex=1;

vm.pageCount=10;

function test(options){

console.log(vm.pageIndex);

switch(options){

case -1:

vm.pageIndex=Math.max(--vm.pageIndex,1);

break;

case 1:

vm.pageIndex=Math.min(++vm.pageIndex,vm.pageCount);

break;

case 2:

vm.pageIndex=vm.pageCount;

break;

default:

vm.pageIndex=1;

break;

}

console.log(vm.pageIndex);

}

补充:if...else if...else也试过了,效果一样,也失败了。但控制台修改变量值没问题。if (options.pageDirec==-1) {

vm.pageIndex=Math.max(--vm.pageIndex,1);

}else if (options.pageDirec==1) {

vm.pageIndex=Math.min(++vm.pageIndex,vm.pageCount);

}else if (options.pageDirec==2) {

vm.pageIndex=vm.pageCount;

}else{

vm.pageIndex=1;

}

Logo

前往低代码交流专区

更多推荐