4 ms·
It just doesn't look comparable to the example i've posted. They were really, really simple, so if QT is the same, i would love to see it do the same. As for im
by mlsarecmg 8y ago
It just doesn't look comparable to the example i've posted. They were really, really simple, so if QT is the same, i would love to see it do the same. As for imperative registration, didn't you just link me to it? If they were functions, you could do:
const A = () => <div>...</div>
const B = () => <h1><A /></h1>
Notice that the B component can refer to the A component because it's in the same scope. There's no magic and no binding/loading. A is a function that is called inside B's function body. It also isn't done by inference of an ID (which would be registration).
- jcelerier 8y ago> const A = () => <div>...</div> ; const B = () => <h1><A /></h1> Yes, an equivalent in QML would look like this if you want it in a single file: Component { id: a Text { text: "foo" } } Component { id: b Rectangle { Loader { sourceComponent: a } } } but the language really wants you to have one component per file, so : A.qml: Text { text: "foo" } B.qml Rectangle { A { } } > if QT is the same, It's not. QML is at its core not a functional language, it's a declarative & reactive language. In my experience, at least 30-40% of QML code does not need any functions. > There's no magic and no binding/loading. I'm not sure we are using the same meaning of binding. The "A" token in your example is obviously bound to the "A" variable declared before. > It also isn't done by inference of an ID (which would be registration). ids in QML are just the variable names. eg Rectangle { A { id: foo } width: 2 * foo.width }