Ember-I18n을 사용하는 국제화 된 Ember.js 앱을 만들고 있습니다. 이것은 대부분의 시나리오에서 잘 작동하지만 지금은 언어 문자열을 고려 : {{link}}
이 필요Handlebars.js의 변수 템플릿
'To do some action {{link}}'
일부 링크로 대체 될 수 있습니다. {{link}}
의 위치는 언어마다 다를 수 있기 때문에 번역 문자열을 분해 할 수 없습니다. 그래서 대신 거기에 링크를 얻을 수있는 방법을 찾아야합니다. 이는 물론 번역에 다른 템플릿, 같은 것입니다 : 내가 thusfar 몇 가지를 시도했습니다
<a {{action someAction}}>{{t click_here}}</a>
: 사용자 정의 블록 도우미를 사용하여 링크에 대한 사용자 정의보기를 생성하는 단계; 그러나 나는 아직 일할 수있는 것을 얻지 못했다.
이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 즉, 렌더링 된 템플릿을 Ember.js의 다른 템플릿에 삽입하는 변수로 어떻게 가져올 수 있습니까?
var view = Em.View.create({
templateName: "mytemplate",
link: "http://emberjs.com",
});
2 :이 같은 템플릿의 뷰를 생성합니다)
1 :
가 가능한가 ? – Jasper
현재 비슷한 시나리오의 앱을 만들고 있습니다. 별도의 파일에 모든 템플릿을 만든 다음 각 템플릿의 핸들 막대 마크 업을 리소스 파일의 키에 수동으로 복사합니다 (.net을 사용하고 있으므로 지원하는 각 언어에 대한 .resx 파일이 있습니다.) .yml 파일, 맞지?). 내가 변경할 때마다 전체 템플릿을 리소스 키에 수동으로 복사해야하고 공백을 모두 처리해야하기 때문에 이동하는 가장 좋은 방법은 아닙니다. 그런 다음 런타임에 템플릿 소스를'Ember.TEMPLATES'에 주입합니다. 다시 한번 말하지만, 최선의 방법은 아닐 수도 있습니다. 그냥 던지십시오. – MilkyWayJoe
@ Jasper 그럴 수도 있습니다. 그러나 이미 충분하지 않은 몇 가지 시나리오를 생각할 수 있습니다. 하나 이상의 링크가 있다고 상상해보십시오. _might_ 심지어 정확하지 않음). 이 문제를 해결할 수있는 방법은 아마도 그런 예외적 인 경우가 아니기를 바랄 수 있지만 더 나은 접근 방법이되기를 바랍니다. –