我正在尝试在ng-repeat中显示一组对象。
这是对象数组
$scope.test = [
{
value1: "app\test\maintenance1",
value2: "other value1"
},
{
value1: "app\test\maintenance2",
value2: "other value2"
}
]
这是html:
<table>
<tbody>
<tr ng-repeat="item in test">
<td>{{item.value1}}</td>
<td>{{item.value2}}</td>
</tr>
</tbody>
<table>
我遇到的问题是$ scope.test.value1中包含的\ t和\不会被渲染。
我不想手动转义字符(使用\\ t和\\),因为我将从REST服务接收此数组。
我搜索了几个小时没有成功(试过$ sce)。
以下是我遇到的问题:https://plnkr.co/edit/AhJaNCOa0saGTSjh9u5H?p=preview
答案 0 :(得分:1)
您正面临转义序列问题,您需要使用附加的\(反斜杠)转义每个特殊字符,这是您要在视图上打印的每个特殊字符的情况,请尝试此操作(单击运行代码段以查看输出):
angular.module('mainMod', []).controller('mainController', function($scope){
$scope.test = [
{
value1: "app\\test\\maintenance1",
value2: "other value1"
},
{
value1: "app\\test\\maintenance2",
value2: "other value2"
}
]
})
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.0/angular.min.js"></script>
<html ng-app="mainMod">
<head> </head>
<body ng-controller="mainController">
<ul>
<li ng-repeat="item in test">
{{item.value1}} {{item.value2}}
</li>
</ul>
</body>
</html>