Clarify dynamic scoping

This commit is contained in:
Stefan Dunca 2022-04-04 10:48:23 +03:00 committed by Michał Cieślak
parent 62b09f047c
commit 9be2de676a
1 changed files with 4 additions and 2 deletions

View File

@ -86,7 +86,7 @@ Use `Layout.preferredWidth` and `Layout.preferredHeight` attached properties to
Follow [Qt's recommendations](https://doc.qt.io/qt-5/qtqml-documents-scope.html) if appropriate Follow [Qt's recommendations](https://doc.qt.io/qt-5/qtqml-documents-scope.html) if appropriate
- Consider dynamic scoping. Component `id`s are not accessible outside the component's scope. If required, the component can expose the instance through properties binding. E.g. `readonly property ComponentType exposedComponent: privateInstanceId` - Avoid dynamic scoping in out-of-line components, see more: https://doc.qt.io/qt-5/qtqml-documents-scope.html#component-instance-hierarchy
- Example - Example
```qml ```qml
@ -101,6 +101,8 @@ Follow [Qt's recommendations](https://doc.qt.io/qt-5/qtqml-documents-scope.html)
} }
``` ```
- Component `id`s are not accessible outside the component's scope. If required, the component can expose the instance through properties binding. E.g. `readonly property ComponentType exposedComponent: privateInstanceId`
- If in doubt, explicitly use an instance variable to access properties - If in doubt, explicitly use an instance variable to access properties
- If the scope is clear and there is no ambiguity, use the property directly for readability - If the scope is clear and there is no ambiguity, use the property directly for readability
@ -153,4 +155,4 @@ Try scenarios
- Resize window to check the behavior for each case - Resize window to check the behavior for each case
- Visually validate that each control is behaving as expected - Visually validate that each control is behaving as expected
- Add controls with different properties that affect control size behavior - Add controls with different properties that affect control size behavior