[英]AngularJS: Splitted string as array, get first element
可能这是一个愚蠢的问题,但我真的无法摆脱。 在一个AngularJS Web应用程序中,我用一个过滤器拆分了一个从JSON中获取的字符串,我无法修改:现在,整个字符串(日期+小时)被分成一个由2个元素组成的数组(array [0] = date,array [1] = hour),但我不知道如何仅获取HTML中的第一个。
我不能将单个元素作为作用域传递,也不能使用ng-repeat,因为我必须为每个元素分配不同的类。
HTML:
<span class="time">{{manif.avvenimento.data | split:' '}}</span>
结果以HTML格式打印:
["03/02/2014","20:40"]
我需要得到这样的东西:
<span class="A">03/02/2014</span>
<span class="B">20:40</span>
谢谢你们!
我将两个字符串放在一个单独的对象中。 这样一来,您就不会在每个摘要周期中执行字符串拆分,这对于性能而言会更好。
在您的控制器中:
$scope.timestamp = {
'date': '',
'time': ''
}
$scope.$watch(manif.avvenimento.data, function (newValue, oldValue) {
$scope.timestamp.date = ... // Place the date here
$scope.timestamp.time = ... // Place the time here
});
在您的HTML中:
<span class="time">{{timetamp.time}}</span>
<span class="date">{{timetamp.date}}</span>
最有可能这样做:
<span class="date">{{ (manif.avvenimento.data | split:' ')[0] }}</span>
<span class="time">{{ (manif.avvenimento.data | split:' ')[1] }}</span>
要从后端获取JSON数组,请将以下内容添加到AngularJS控制器中:
var dtRes = $resource('URL to your resource object');
$scope.dtArr = dtRes.query();
然后使用以下命令在您的HTML中进行迭代:
<li data-ng-repeat="dt in dtArr">
<span>{{dt.date}} {{dt.time}}</span>
</li>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.