계피 애플릿에서 사용하고자하는 GSTVs에 a(ss)
유형의 GVariant로 저장된 배열이 있습니다. 다음 코드를 사용하여 값을 성공적으로 검색 할 수 있습니다.자바 스크립트에서 GVariant 압축을 풉니 다
let schema = schema_source.lookup(SCHEMA_NAME, false);
let settings = new Gio.Settings({ settings_schema: schema });
let my_value = settings.get_value('myvalue');
하지만 압축을 풀 수 없습니다. 지금까지 볼 수 있듯이 GVariantIter
구조체를 사용하여 패키지를 압축해야하지만 문서가 제한되어 gjs API에서 올바른 인터페이스를 찾을 수 없습니다 (실제로 존재하는 경우). 아무도 그것을하는 방법을 알고 있습니까?
감사합니다.
편집 : 시간 나는 설정을 저장하기 위해 외부 JSON
파일을 사용하고있는 경우
<key type="a(ss)" name="myvalue">
<default>[]</default>
<summary>an array of (string, string) tuples</summary>
<description></description>
</key>
를하지만 100 % 만족스러운 해결책이 아니다 : 내 스키마는 다음과 같습니다. 두 개의 as
유형 변수를 유지 관리 할 수 있다고 가정하고 정렬을 유지하지만 올바르게 수행 할 수있는 방법이 있어야합니다.
감사합니다 - 시간이 다가와서 다시 확인해 보겠습니다 :) – simon
저에게 맞습니다! 이 정보를 어디서 발견했는지 물어봐도 될까요? [공식 문서] (https://developer.gnome.org/glib/stable/glib-GVariant.html)에서 나는'unpack()'이라는 메소드를 찾을 수 없습니다. – JayStrictor