0

Typeahead-Bloodhound バンドルを使用して、カスタム提案テンプレートを作成しました。テンプレートが変数をコンパイルするために呼び出しているオブジェクトを把握しようとしています。{{}} テンプレートの代わりにアンダースコアを使用しています。

_.compile( '<p><strong><%=PN%></strong> <span class="tt-suggestion-etc"> <%=A2 %>| LAT: <%=Y%> LON: <%=X%></span></p>' )

これが標準の Typehead ブラケットの場合:

compile( '<p><strong>{{PN}}</strong> <span class="tt-suggestion-etc"> {{A2}}| LAT: {{Y}} LON: {{X}}</span></p>' )

次のように、アンダースコアの JavaScript を介して実際のオブジェクト プロパティにアクセスできるようにしたいと考えています。

_.compile( '<p><strong><%=PN%></strong> <span class="tt-suggestion-etc"> <% if(someObj.someProp !== undefined ){ // do something }else{ //do something else } %>| LAT: <%=Y%> LON: <%=X%></span></p>')

4

1 に答える 1

0

テンプレートで console.log(this) をいじってみたところ、答えが「obj」であることがわかりました。obj.thisProp、obj.thatProp のように。だから今私はこれを行うことができます:

_.compile( '<p><strong><%=PN%></strong> <span class="tt-suggestion-etc"> <% if(obj.someProp !== undefined ){ // do something }else{ //do something else } %>| LAT: <%=Y%> LON: <%=X%></span></p>')

これが他の誰かが答えを探しているのに役立つことを願っています!

于 2015-01-05T21:34:26.957 に答える