javascript - 我的 ng-repeat 仅按字母顺序工作 |angularJS

标签 javascript html angularjs

我正在尝试实现一个应用程序,其中一个对象中可以有无限数量的产品 JSON

 $scope.tableContent = [
        {
            id: 1,
            sks: 'sk1',
            product1: [],
            product2: []
        },
        {
            id: 2,
            sks: 'sk2',
            product1: [],
            product2: []
        },
        {
            id: 3,
            sks: 'sk3',
            product1: [],
            product2: []
        }];

这里,当我点击 HTML 中的按钮时,直接添加了product3,但是在product9之后,product10出现在product1的下一个 block 中,我后来发现这是因为产品按字母顺序显示

我的 HTML

   </div>
    <!-- in this division the values are the ones to be shown -->

    <div class="row" id="{{x.id}}" ng-repeat="x in tableContent">

        <div class="cell" ng-click=openModal(x)> {{x.sks}} </div>

        <div class="cellD" ng-repeat="(key, value) in x" ng-if="key !== 'id' && key !=='sks' ">
            {{key}}    {{ value }}
            <div class=row ng-repeat=" prod in value">

                <div class=cell>{{prod}}

                </div>

            </div>
            <div class=row>
                <div class="cell" ng-click="modalBoxOpen(key,x.id)">+</div>
            </div></div>

此外,如果给出了 ProductA 或 ProductB 等值,则无论 JSON 中的顺序如何,它们都会按字母顺序显示

最佳答案

这是显而易见的。因为product10

如果您想根据这种顺序订购产品,您必须考虑这一点。例如,您可以使用 product09 而不是 product9 或使用比较功能手动处理它。或者您可以使用另一个字段作为订单,例如 id

关于javascript - 我的 ng-repeat 仅按字母顺序工作 |angularJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43841847/

相关文章:

javascript - 如何从 angularjs 中更新的行中删除表行?

javascript - 生成并排序 Javascript 随机数

JavaScript:一个字母和一个点的正则表达式

javascript - Angular/Typescript 二维数组问题

javascript - 通过 Javascript 插入的 attr 换行的 CSS 伪元素内容值

html - 使用 CSS 缩小元素的高度以匹配其父元素

javascript - 使用 Grunt 和 Node.js 构建 AngularJS UI-Grid 时遇到问题

javascript - 如何在客户端浏览器中检测特定版本的 webkit?

css - 导航栏以 FF 22 Chrome 27 为中心,但不是 IE 8

javascript - Angularjs 按下 ng-repeat 内的复选框时禁用下拉菜单