1
저장소 서비스를 사용하는 작업을 수행하는 구성 요소를 만들었습니다. 통합 테스트에서 어떻게이 작업을 스터핑 할 수 있습니까? 이 구성 요소의 템플릿에서엠버에서 구성 요소의 동작을 스텁하는 방법은 무엇입니까?
// app/components/invoice-form.js
export default Ember.Component.extend({
actions: {
loadPartners() {
let self = this;
this.get('store').findAll('partner').then(function(partners) {
self.set('partners', partners);
});
}
}
});
내가 아이 컴퍼넌트에 폐쇄로이 작업 통과 : 내 통합 테스트에서
{{button-confirmation text="Are you sure?" onConfirm=(action "loadPartners")}}
을, 평소
this.render(hbs`{{invoice-form}}`);
액션 loadPartners과 같은 구성 요소를하지 않는 렌더링 구성 요소 도우미에 인수로 전달됩니다. 그것의 정적 인 구성 요소의 동작.
그렇다면 통합 테스트에서 loadPartners 액션을 스텁하는 방법에 대해 궁금한 점이 있습니까?
어떻게'store'를 삽입합니까? [twiddle] (https://ember-twiddle.com/7b868c31e43064c20f6e95991a53f353?openFiles=components.my-component.js%2Ctemplates.components.my-component.hbs)에서 구성 요소 정의를 볼 수 있습니까? – ykaragol
실제로 구성 요소에 저장소를 삽입하거나 액세스해서는 안됩니다. 경로에서만 액세스해야합니다. – ykaragol
IMO 구성 요소의 상점에 액세스해도 괜찮지 만 그렇게해야하는 것이 좋습니다. – AlexMA