2014-11-09 2 views
1

숫자로 시작하는 키 (특히 GUID)와 같이 일반적으로 Meteor에서 허용되지 않는 물체의 키에 액세스해야합니다. 내가 초기에는 더 노력 무엇화재로 임의의 키에 액세스

:

<input type="checkbox" checked={{property.62f53e2e-e4d3-4ff1-b451-2325a6bfbfd0}} /> 

을 ...하지만 그 Expected identifier, number, string, boolean, or null가 발생합니다. 이 이러한 속성에 액세스 할 수있는 깨끗한 방법이있는 Exception from Tracker recompute function: Can't call non-function: [object Object]

을 던졌습니다 ...

<input type="checkbox" checked={{property['62f53e2e-e4d3-4ff1-b451-2325a6bfbfd0']}} /> 

:

다음 나는 자바 스크립트 스타일을 시도?

답변

2

템플릿 데이터를 통해 개체를 전달한다고 가정하면 .js 파일의 도우미 기능은 무엇입니까?

Template.someTemplate.helpers({ 
    property : function() 
    { 
     return this.property['62f53e2e-e4d3-4ff1-b451-2325a6bfbfd0']; 
    } 
}); 

(편집 : 당신은 단순히 당신의 템플릿에 {{property}}을 둘 것) @Kyll 이미 설명, 정말 지금이 을 할 수있는 유일한 헬퍼 (단지 제출 버그/기능 요청 on GitHub으로

+0

나는이 방법에 대한 생각 역시, "해결 방법"이없는 기본 솔루션이있을 수 있기를 바랬습니다. 네이티브 솔루션이 나타나지 않으면 대답을 수락합니다. –

+0

'{{여기}}'에있는 코드가 함수이거나 템플릿 데이터에 직접 액세스한다고 가정합니다. [Spacebards doc] (https://github.com/)를 확인하고 있습니다. meteor/meteor/blob/master/packages/spacebars/README.md)'# with'로 수행 할 수 있는지 확인하십시오 –

+0

Nop, 행운이 없습니다. 키 이름 ('property._62f53')을 이스케이프하거나 도우미를 사용하십시오. 죄송합니다 =/ –

0

).

objectProperty: (object, propertyName) -> object[propertyName] 

... 그리고 템플릿이 점을 넣어 : (어떤 이유로)하면 일반 도우미를 원하는 경우

, 당신은이를 사용할 수 있습니다

{{objectProperty property '62f53e2e-e4d3-4ff1-b451-2325a6bfbfd0'}} 
관련 문제