2014-12-17 5 views
0

내 머리카락을 찢어 버렸으므로 나를 구할 수 있습니까?넉 아웃 구성 요소 선택 옵션

JSON 개체를 기반으로 선택 목록을 렌더링하는 간단한 녹아웃 구성 요소를 만들고 싶습니다. 이 간단한 문자열 배열을 사용할 때 작동하지만 optionsText 및 optionsValue를 사용하여 바인딩되는 id 및 name 특성과 함께 JSON 개체를 사용하면 [object object]가있는 드롭 다운 목록이 나타납니다.

도움을 주시면 감사하겠습니다.

template: 'Organizations: <select data-bind="options: organizationList, optionsText: "name", optionsValue: "id""></options>' 
// Here ------------------------------------^ but then ------------------------------^ 

을 ... 그래서 data-bind 옵션은 실제로 당신이 그 임베디드 따옴표를 이스케이프 할 필요가

data-bind="options: organizationList, optionsText: " 

포함

 ko.components.register("organization-select", { 
      viewModel: function (params) { 
       var self = this; 
       self.organizationList = ko.observableArray([]); 
       self.organizationList(["foo", "bar"]); //this works 

       //this doesn't work Result => [Object Object],[Object Object] 
       self.organizationList([{ "id": 1, "name": "foo" }, { "id": 2, "name": "bar" }]); 
      }, 

      template: 'Organizations: <select data-bind="options: organizationList, optionsText: "name", optionsValue: "id""></options>' 
      //this works with simple array of strings 
      //template: 'Organizations: <select data-bind="options: organizationList"></options>' 
     }); 
     ko.applyBindings(); 
    }); 

답변

2

지수는 엉망 봐. 아마도 가장 쉬운 방법은 이스케이프 처리 된 싱글을 사용하는 것입니다.

template: 'Organizations: <select data-bind="options: organizationList, optionsText: \'name\', optionsValue: \'id\'"></options>' 
+0

정말 고마워요. – user95488