다음 백본 (coffeescript) 뷰에서 배열을 전달하고 각 항목을 엘에 추가하려고합니다. 그러나 나는 비어있는 엘을 생각해 내고있다.백본 뷰 엘이 추가되지 않음
ItemTagList = Backbone.View.extend
className : "itemTagsContainer"
initialize : (tags) ->
this.render(tags.taglist)
render: (taglist) ->
taglist.forEach (tag) ->
tag_span = _.template($("#tag").html(), {tag : tag})
$(this.el).append(tag_span)
console.log(tag)
는 템플릿 $("#tag")
은 다음과 같습니다 : 렌더링시
<a class='tag' href="/items?tagged_with=<%= tag =>"><%= tag =></a>
, 위의 제대로 taglist
반복, 그래서 taglist 제대로 백본보기에 전달되는 것을 알고,뿐만 아니라 것 render
함수에 전달합니다.
하지만 내가 할 경우 항상 빈 el
를 얻을 수
itemTagList = new ItemTagList
taglist : ["Tag1", "Tag2"]
console.log(itemTagList.el)
에 따라, 즉
<div class="itemTagsContainer"></div>
대신 내가 얻을 수 있었으면 된 것입니다
<div class="itemTagsContainer">
<a class='tag' href="/items?tagged_with=Tag1">Tag1</a>
<a class='tag' href="/items?tagged_with=Tag2">Tag2</a>
</div>
의.
아무도 도와 줄 수 있습니까?
와우! 방금 일 했어! 나는 밤새도록 문제를 알아 내려고 노력했다. 해결책을 지적 해 주셔서 감사합니다. coffeescript와 javascript에 대해 더 자세히 알아볼 필요가 있습니다. – DannyClay
@ 대니 클레이 : 천만에. '@'(일명'this')의 올바른 가치를 얻는 것이 아마도 가장 일반적인 (Coffee | Java) 스크립트 문제 일 것입니다. JavaScript에서는'var _this = this;','var that = this,'또는'var self = this;'를 자주 보게 될 것이고'_this','that' 또는'self'를 대신 사용할 수 있습니다 이 '의. –