Program Tip

Angular ng-options에서 값을 연결할 수 있습니까?

programtip 2020. 10. 29. 19:12
반응형

Angular ng-options에서 값을 연결할 수 있습니까?


기본적으로 선택 상자를 채우려 고하지만 first_name열과 열의 값을 연결합니다 last_name.

내가 원하는 것 (작동하지 않음) :

<select ng-model="buyers" ng-options="b.id as (b.first_name + " " + b.last_name) for b in buyers"></select>

작동하는 것 :

<select ng-model="buyers" ng-options="b.id as b.first_name for b in buyers"></select>

따옴표는 중요합니다. 큰 따옴표 안의 큰 따옴표 나 작은 따옴표 안의 작은 따옴표에는 작동하지 않습니다.

작동하는 것 :

<select ng-model="buyers" ng-options='b.id as (b.first_name + " " + b.last_name) for b in buyers'></select>

다음 synthax를 사용하여 문자열을 연결할 수 있습니다.

ng-options="i.x + ' ' + i.y for i in items"

다음 스 니펫은 firstnamelastname:

angular.module('myApp', []);

function MyCtrl($scope) {
  $scope.names = [{firstname: 'Jon', lastname: 'Snow'},
                  {firstname: 'Rob', lastname: 'Stark'},
                  {firstname: 'Ned', lastname: 'Stark'}];
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app="myApp" ng-controller="MyCtrl">
  <select ng-model="selected" ng-options="n.firstname + ' ' + n.lastname for n in names"></select>
  selected: {{selected}}
</div>

괄호는 필수 는 아니지만 가독성을 향상시킬 수 있습니다 .

참고 URL : https://stackoverflow.com/questions/20101793/is-it-possible-to-concatenate-values-in-angular-ng-options

반응형