KAIKAS로 웹 페이지에 연결을 했습니다.
예제에 있는 아래 두 가지는 잘 활용하고 있는데요,
klaytn.on('accountsChanged', ...);
klaytn.on('networkChanged', ... );
KAIKAS가 자동 잠금 타이머에 의해 [잠김 상태]로 변경되는
이벤트에 대한 문서가 있는 지 문의 드립니다.
없는 거라면 주기적으로 상태를 체크하도록 해야 할까요?
KAIKAS로 웹 페이지에 연결을 했습니다.
예제에 있는 아래 두 가지는 잘 활용하고 있는데요,
klaytn.on('accountsChanged', ...);
klaytn.on('networkChanged', ... );
KAIKAS가 자동 잠금 타이머에 의해 [잠김 상태]로 변경되는
이벤트에 대한 문서가 있는 지 문의 드립니다.
없는 거라면 주기적으로 상태를 체크하도록 해야 할까요?
안녕하세요
Kaikas 확장프로그램 안에서 찾아낸것이라 공식적인 정보는 아닙니다.
언제든지 breaking change 될 가능성이 있습니다.
klaytn.publicConfigStore.getState();
을 통해 State를 가져올 수 있습니다. (Redux와 유사)
isUnlocked
를 사용하시면 됩니다.
if (!window.klaytn) {
return;
}
await window.klaytn.enable();
window.klaytn.on('accountsChanged', () => {
console.log(window.klaytn?.selectedAddress);
});
window.klaytn.publicConfigStore.subscribe(() => {
if (!window.klaytn) {
return;
}
const state = window.klaytn.publicConfigStore.getState();
console.log(state.isUnlocked);
});
아래 내용은 제가 작성한 definition 입니다.
interface Klaytn {
on: (eventName: string, callback: () => void) => void;
enable: () => Promise<Array<string>>;
selectedAddress: string;
networkVersion: number;
publicConfigStore: Store;
}
interface State {
isEnabled: boolean
isUnlocked: boolean;
networkVersion: number;
onboardingcomplete: boolean;
}
interface Store {
subscribe: (callback: () => void) => void;
getState: () => State;
}
declare interface Window {
klaytn?: Klaytn;
}