在开始之前,我想指出这是在 ServiceNow Orlando 版本中开发的,它使用 AngularJS 1.6.10我陷入了一段棘手的代码,无法正确执行,我正在使用 ng-repeat 构建硬件设备目录,在本例中是笔记本电脑,我们添加了一个按钮,可以快速让人们将设备添加到购物车,我们现在想要添加一个数量字段,以便可以同时添加多个设备,我得到了它,但 AngularJS 在开头添加了一个空单元格,我需要将其设置为默认值1,我确实做到了这一点,但它破坏了购物车体验,因为无论选择多少数量,添加到购物车的每个商品都是 1。这是大部分 html 代码,其中还包括构建硬件设备的 ng-repeat,我正在使用每个人似乎都推荐的 ng-options,在 Stack Overflow 上阅读了很多内容。问题是 ng-model,因为它被设置为 $scope.items[0] 它永远不会更新,我一直在研究 getterSetter 但目前非常难以理解,无法让它工作。控制器:$scope.items = [{
id: 1,
label: '1'
}, {
id: 2,
label: '2'
}, {
id: 3,
label: '3'
}];
$scope.selected = $scope.items[0];一切看起来像什么:因此,我在高性能 PC 笔记本电脑上选择了“3”,但如果您查看右侧的控制台日志,您可以看到添加的值是 1。显示添加到购物车的图片真的很遗憾,我对空单元格很满意,但这正是客户想要的,我知道我可以用一些文本更新空单元格,但他们真的希望它默认为 1。任何建议,我将不胜感激,无聊的熊猫
1 回答
倚天杖
TA贡献1828条经验 获得超3个赞
用 ng-show 替换 ng-if 解决了我的问题,尝试解决这个问题花了几天时间,还开发了一个带有数字增量的更简单的解决方案
代码在这里:
<input type="number" value="1" min="1" max="20" step="1" ng-model="items_increment" title="Quantity" ng-show="item.u_show_quantity_button == 'true'"/>
$scope.items_increment = 1;
希望它可以帮助另一个人。
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消