2017-02-27 4 views
0

사실 저는 Dexie + VueJs를 사용하고 있으며 레코드 목록이있는 테이블을 인쇄하고 종속 레코드를 계산하기위한 필드를 추가로 인쇄하고 있습니다. 그러나 어떻게해야합니까? 깔끔한 방법.Dexie에서 Vue로 데이터를 동 기적으로 전달하는 방법은 무엇입니까?

내가 뭘하려는 있습니다 :

var vueElement = new Vue({ 
el: '#myElement', 
data: { 
    states: [] 
}, 
computed: { 
    cities: function (s) { 
     return db.cities.where('stateId').equals(s.id).count(); // How can I do this? 
    } 
} 
}); 
// Initialize states in vue object 
db.states.toArray().then(function (arr) { 
    vueElement.states = arr; 
}); 
+0

죄송가 익숙하지 도움이되기를 바랍니다? – Austio

+0

'computed' 속성 대신'methods'를 사용해보십시오. – Saurabh

+0

@Austio 예, 약속을 반환합니다. – robregonm

답변

1

때문에 대부분의 모든 dexie 작업이 당신이 (dexie에 의해 반환 된 데이터 VUE 구성 요소를 초기화 먼저 dexie 비동기 작업을 할 필요가 있고 비동기 실행하지 경우).

또는 데이터없이 vue 구성 요소를 초기화하고 사용 케이스에 따라 작성/탑재 된 상태에서 db의 데이터를 요청하고 상태를 업데이트 할 수 있습니다.

나는이 약속을 반환`...은`db.cities을 수행, dexie와

+0

이 접근법의 문제점은 Vue 템플릿이 Dexie에서 오는 업데이트를 렌더링하지 않는다는 것입니다 – robregonm