4.x에서 6.2.0으로 업그레이드 할 기존 ExtJS 응용 프로그램이 있습니다. 나는처럼 보이는 내 Ext.onReady()
블록으로 통과 간단한 스토리지 제공 업체 세터를 가지고 다음과 같은 : 그래서6.2에서 ExtJS Ext.state.Manager.setProvider() 동작 4.x에서
ext-all-rtl-debug.js:9389 [E] Ext.util.LocalStorage.constructor(): Cannot create duplicate instance of local store "ext". Use Ext.util.LocalStorage.get() to share instances.
: 나는 6.2.0로 스왑 할 때
Ext.state.Manager.setProvider(Ext.create('Ext.state.LocalStorageProvider',{}));
, 나는 오류를 얻을 것 난 그냥 문제에 대한 미봉책을 적용하고있어 것입니다하지만 여기
Ext.state.Manager.setProvider(Ext.util.LocalStorage.get('id'));
내 문제 : 나는 내가 생각하는 것은 수정하고,에해야 할 일을했을 것을, 다음이었다 진정한 해결 방법은 없습니다. 내가 명시 적으로 다른 곳에서 공급자를 설정하지는 않았지만, 내가했던 모든 것은 ExtJS lib를 4.x에서 6.2.0으로 바꿔서 그 오류를 얻었습니다. 그것은 마치 6.2.0 초기화 프로세스에서 처음으로 다른 곳에서 만들어졌고 지금은 앞에서와 같이 duplicate
오류가 발생합니다.
6.2.0에서 변경된 사항은 무엇입니까? 현재 ExtJS와 클라이언트 코드가 설정된 두 개의 공급자가 있습니까? 이것을 처리하는 더 깨끗한 방법이 있습니까?
먼저 공급자를 설정하는 위치를 추적합니다. 'Ext.util.LocalStorage.cache'에 ID를 설정하는 곳에 중단 점을 넣으십시오. –
예를 들어 [바이올린에서] (https://fiddle.sencha.com/) 할 수 있습니까? – madreason
u가 init 단계에서 문서에 설명 된 것처럼 setter를 넣으려고 했습니까? (ext가 준비되지 않은 경우는 제외) http://docs.sencha.com/extjs/6.2.0/classic/Ext.state.Manager.html – devbnz