Backbone.js를 사용하여 앱을 제작하고 있지만 초기에 해결할 수없는 문제가 발생했습니다.보기에 여러 이벤트 발생 렌더링
지금은 간단한 목록/세부보기 설정이 있지만 세부적인보기를 렌더링 할 때마다 내 이벤트가 복합됩니다. 예를 들어 두 개의 상세보기를 표시하고 링크를 클릭하면 두 번 클릭됩니다.
내보기 (커피 스크립트로 작성) 다음과 같습니다
#
# Project List View
#
class ProjectListView extends Backbone.View
el: $("#projectList")
events : {
"click #addProject" : "createNewProject"
}
initialize : ->
@template = _.template(app.projectListView)
_.bindAll(this, "render", "createNewProject")
@render()
createNewProject : (e) ->
e.preventDefault()
e.stopPropagation()
tempProject = Projects.create({
title : 'Test Project'
description : ''
browserDefault : 12
lineHeight : 21
})
render : =>
$(@el).html(@template())
@delegateEvents()
return @
은 분명히 아웃이 사건을 내가 이벤트를 발사 어떤 클릭을하지 않습니다. 내가 여기서 무엇을 놓치고 있니?
예. 일부 코드 정리와 함께 작동합니다. 매번 내가하고 싶지 않은 새로운 시야를 만들기 때문입니다. _bindAll 행을 제거 할 수 있는지 몰랐습니다. 매우 흥미로 웠습니다. 코드에서 약간 벗어 났을 때 코드의 서식이 올바르게 들여 쓰기되었습니다. – JMWhittaker
이 코드의 경우 백본이 올바른 컨텍스트의 이벤트 처리기를 호출하므로'=>'는 필요하지 않습니다. – rfunduk
@rfunduk 사실. "왜 안돼?" 특색. –