Как я могу сделать, если я пытаюсь объединить 2 строковых значения? Например, ng-repeat = "a in (name + 'List')"
. Значение строки имени в этом выражении allList
, jonnyList
, henryList
. Как я могу это сделать?
Пример кода:
<ul ng-repeat="a in name+List"> // i want if "name = 'all'", Return the values in allList.
<li>{{a}}</li>
</ul>
1
Erdem Aydemir
24 Апр 2017 в 15:47
2 ответа
Лучший ответ
Вы можете создать функцию, которая будет возвращать нужный массив как $scope's
соответствующее свойство:
$scope.dynamicArray = function(name){
return $scope[name + 'List'];
}
<ul ng-repeat="a in dynamicArray(name)">
<li>{{a}}</li>
</ul>
4
Slava Utesinov
24 Апр 2017 в 12:56
Определите метод области, который добавляет «Список», а затем используйте этот метод в ng-repeat
$scope.getList = function(name) {
return $scope[name + "List"];
};
<ul ng-repeat="a in getList(name)">
<li>{{a}}</li>
</ul>
2
devnull69
24 Апр 2017 в 12:52
Похожие вопросы
Новые вопросы
angularjs
Используйте для вопросов об AngularJS (1.x), JavaScript-фреймворке с открытым исходным кодом. НЕ используйте этот тег для Angular 2 или более поздних версий; вместо этого используйте тег [angular].