0

나는 내가 엠버의 구성 요소 내가 부모 템플릿에 두 번이 구성 요소를 사용하여 각 구성 요소의 위치가 개의 다른, 그것은 BTW타다 남은 여러 구성 요소는

import Ember from 'ember'; 
var data, elTop; 
export default Ember.Component.extend({ 
    init(){ 
    this._super(...arguments); 
    }, 
    didInsertElement(){ 
    this._super(...arguments); 
    data = this.get('id'); 
    elTop = $('#'+data).offset().top; 
    console.log(elTop); 
    } 
}); 

을 foo는 이름,하지만 왜 때 스피 콘솔을하고있다 같은 오프셋 값을 로그에 기록하십시오.

누구든지 설명하고 해결할 수 있습니까? 그리고 나는이 console.log($('#'+data).offset().top) 작업을 사용하지는 않지만 스크롤 이벤트를 사용할 때 글리치를 보입니다.

감사합니다 :)

답변

0

당신은 속성 구성 요소 내부 elTopdata를 도입 할 필요가있다.
당신은 this.$

import Ember from 'ember'; 
export default Ember.Component.extend({ 
    data: '', 
    elTop: '', 
    didInsertElement() { 
     this._super(...arguments); 
     elTop = this.$().offset().top; 
     console.log(elTop); 
    } 
}); 
+1

감사 buddys를 사용하여 구성 요소의 DOM에 액세스 할 수 있습니다 : – cahyowhy