【发布时间】:2026-01-30 00:25:01
【问题描述】:
我要绑定动态数据,绑定数据后数据顺序变了
var app = angular.module("mainApp", []);
app.controller('mainCtrl', function($scope){
$scope.fieldNames = { author_name: "Author Name", about_author: "About author", author_image : "Author Image" };
$scope.authors = [{author_name: 'akshay', about_author:'this is about author', author_image:'image url here'}];
console.log($scope.authors);
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="mainApp" ng-controller="mainCtrl">
<div ng-repeat="author in authors" class="authorAndTagGroup">
<div ng-repeat="(key, value) in author">
<label class="col-sm-3 control-label">{{fieldNames[key]}}</label>
<input type="text" ng-model="author[key]">
</div>
</div>
</div>
我想像这样显示
作者姓名:akshay
关于作者:这是关于作者的
author_image : 此处为图片网址
【问题讨论】:
-
for..in循环永远无法保证订单。因此,当您执行内部ng-repeat时,您会错过订单。您可以按照您想要的顺序显式绑定这些值。 -
在我看来,数据已按您预期的顺序显示。 See plnkr
-
@KhalidHussain 请运行 sn-p 它无法正常工作
-
@Jimbrooism 是的,在你的代码 sn-p 中它不起作用,but it is working in my plnkr。
-
@KhalidHussain 我发现了问题,sn-p 在角度 1.2.23 上运行,而 plnkr 在 1.5.3 中,如果您将 1.5.3 更改为 1.2.23,它将无法工作
标签: javascript angularjs json angularjs-ng-repeat