1
나는 간단한 커피 스크립트 클래스를 쓰고 있어요,하지만이 코드로 상황에 맞는 문제로 실행 해요 :document.addEventListener "이"상황
class DragDrop
constructor: (@selector, @bodyDragEnterClass = "drag-over") ->
@attachEventHandlers()
attachEventHandlers:() ->
document.write(@bodyDragEnterClass) # this line tells me, that @bodyDragEnterClass is "drag-over"
document.addEventListener("dragenter", @onDragEnter, false)
onDragEnter:() ->
document.write(@bodyDragEnterClass) # this line tells me, that @bodyDragEnterClass is undefined
jQuery("body").addClass(@bodyDragEnterClass)
window.DragDrop = DragDrop
attachEventHandlers 메소드가 호출되면, @bodyDragEnterClass입니다 예상대로 "드래그 오버"로 설정하십시오. 그러나 dragenter 이벤트가 트리거되고 onDragEnter 메서드가 호출되면 @bodyDragEnterClass는 "정의되지 않음"입니다. http://jsfiddle.net/SVvrM/이
가 어떻게이 문제를 해결할 수 :
나는 여기에 상황에 맞는 문제를 입증하는 jsfiddle을 만들었습니다?
당신이 CS에서 상황 극복 방법입니다,하지만 당신은 후드 아래에 무엇을하는지 이해해야합니다 지방 화살표를 사용하면
onDragEnter
기능에this
의 현재 값을 바인딩합니다. 굵은 화살표 코드를 온라인 CS repl에 붙여 넣고'self = this'를 어떻게 설정하는지 봅니다 – Trevor