이 템플릿은 템플릿을 컴파일 할 때 현대적인 브라우저에서는 괜찮 았지만 IE8에서는 흔들리는 것을 의미하는 템플릿 중 하나에서 발견되었습니다.
우리는 serializeData의 때문에 같은 기능을 사용하여 몇 가지 유용한 문자열 우리의 관점에서 데이터를 전달하는 (커피 스크립트를하지만 당신은 아이디어를 얻을) :
...
serializeData: ->
data = super()
data.messages = {
intro: "Welcome to the app"
continue: "Click here to continue"
}
return data
...
다음 참조 있도록
<h1>{{ messages.intro }}</h1>
<a href="...">{{ messages.continue }}</h1>
같은 템플릿
"continue"는 예약어입니다. Coffeescript는 멋지 며 인용 부호없이 객체 정의의 키로 사용할 수 있습니다. 더 현대적인 브라우저의 일반 JS에서는 따옴표로 묶지 않고 사용하는 것이 좋습니다. (일반적으로 그렇게하는 것이 좋지만).
그러나 IE8에서는 obj = {continue : "foo"}처럼 설정할 수 없으며 obj.continue처럼 표시되지 않을 수 있습니다. obj [ "continue"] 여야합니다.
{{messages.continue}}을 {{messages [ "continue"]}}로 바꾸거나 속성 이름을 바꾸면 문제가 해결되었습니다. 사람을 도움이
희망은 여기
롭
에게 같은 문제를 :). 나는'default' 예약어를 사용하고 있었다. –
건배! 나는 잠시 머리를 긁적이며, 그 다음 이것을보고 4 문자를 변경했습니다. 전체 사이트가 다시 작동합니다! 우리는 원시 객체를 사용했습니다. 객체 [ 'new'] 대신에 템플릿에서 새로운 룩업을 사용했습니다. "필수적으로 비동기 적으로로드 된"AMD 모듈과 달리 CommonJS 모듈이 실제로 모두로드된다는 것을 보여주었습니다. 내가 본 이의 제기에도 불구하고 테스트 한 모바일 장치의 성능이 현저히 떨어지는 것 같지 않습니다. 그러나 어떤 페이지에서 어떤 오류가 잡히면 예상치 못한 이점이 있습니다. – trojjer