2013-03-13 2 views
1

Knockout JS를 사용하여 "데이터 바인딩"을 사용하지 않고 뷰 모델의 값을 템플릿에 삽입 할 수 있는지 여부를 알고 싶습니다.KO 뷰 모델의 값을 템플릿에 삽입 할 수 있습니까?

예를 들어 다음보기 모델이있는 경우;

var myViewModel = { 
    var self = this; 
    self.firstName = ko.observable("ABC"); 
    self.lastName = ko.observable("XYZ"); 
}; 

다음과 같은 템플릿을 만들어야합니다.

<script id="myInjectTemplate" type="text/html"> 
    <h3 id="header_${firstName}">${firstName} - ${lastName}</h3> 
</script> 

여기서 Apache Velocity와 마찬가지로 장소 모델에 값을 삽입 할 수 있습니까?

감사합니다.

+0

왜 데이터 바인딩을 사용하지 않으시겠습니까? –

+0

당신은 이것을 위해 콧수염을 사용하는 방법을 내려야합니다 : https://github.com/janl/mustache.js/ – XGreen

+0

이것을 시도하십시오. 감사. –

답변

0

을 github.com/janl/mustache.js 당신은 데이터가 너무 바인딩을 사용하여 ID를 설정할 수 있습니다, 당신은 알고있다 둘 다 :

<h3 data-bind="attr: { id: 'header_$' + firstName() }, text: firstName() + ' - ' + lastName()"></h3> 

계산 된 관측 가능을 사용하여 성과 이름의 전체 이름을 만드는 방법을 살펴 보았습니다.

+0

폴 감사합니다! 이것은 내가 찾고 있었던 바로 그 것이다. 원래의 질문에 정말로 필요한 것을 포함하지 않는 것에 대한 사과. –

+0

하, 걱정 마세요! 어떻게하는지 알지 못하는 한, 당신이 무엇을 물어야 하는지를 아는 것은 종종 어렵습니다. :) –

0

당신이를 위해 콧수염을 사용하는 방법을 갈 필요가 : 당신이 할 수 있도록

var view = { 
     title: "Joe", 
     calc: function() { 
      return 2 + 4; 
     } 
    }; 

var output = Mustache.render("{{title}} spends {{calc}}", view); 
+0

감사 XGreen. 지금까지 콧수염에 대해 몰랐습니다. 이것을 시도 할 것입니다. –

관련 문제