Loader
을 사용하여 전체 화면 구성 요소를 Symbian/QML 프로젝트의 화면 변경에로드하려고합니다. 이것은 올바른 방법으로 생각하지 않습니다. 그래서 나는 명백한 것이 빠져있을 것입니다.Symbian/QML 앱의 화면 간 상태 전달
예를 들어 전체 화면 WebView (a.k.A ChildBrowser)를 열어야하는 버튼이 한 화면에 사용됩니다. ChildBrowser를 재사용 가능한 구성 요소로 만들고 싶습니다. URL을 전달해야합니다. 나는 pragma library
와 자바 스크립트 파일을 작성하려고했습니다
는 : 더 나은 제목의 결핍
.pragma library
var map = {};
function put(key, value) {
map[key] = value;
}
function get(key) {
return map[key];
}
, 우리는이 intent.js
를 호출합니다. 버튼을 잡고
화면 :
import "intent.js" as Intent
Button {
onButtonClicked: {
Intent.put("url", "http://example.com");
console.log("Going to " + Intent.get("url"));
}
}
나중에, ChildBrowser.qml
에, 나는 "intent.js"를 수입하고있어 다음 Intent.get ("URL")를 받고. 이것은 undefined
입니다.
내 질문은 :
- 화면 사이
Loader
의도 구축 방법 및 전환을 사용? - 화면간에 매개 변수를 전달하는 방법은 무엇입니까?
- 앱 평생 동안 상태를 어떻게 유지합니까? 나는 특히 컨트롤러와 모델을 자바 스크립트로 만드는 것에 관심이있다.
나는 이들이 초보자 용 질문이므로, 관련 문서에 대한 링크가 필요할 것만 같습니다. 그러나 은 아니지만입니다.
로더에는 통화 사이트에 약간의 보일러 플레이트가 있어야합니다. 그럼에도 불구하고 이것은 두 가지 아이디어를 제공합니다. 감사. – jamesh
로드 된 qml 파일이 네트워크를 통해 액세스되지 않는다는 것을 알고 있다면 여기에 바로 가기를 걸릴 수 있습니다. qml 파일이 로컬 파일 시스템 또는 자원 파일에서 오는 경우, 로더 소스 설정은 동 기적입니다. 이 가정하에 로더, onLoaded 핸들러 및 else if의 등록 정보를 저장할 수 있습니다. – eburger