Metadata
- Source
- FLUID-6424
- Type
- Bug
- Priority
- Major
- Status
- Closed
- Resolution
- Fixed
- Assignee
- Antranig Basman
- Reporter
- Antranig Basman
- Created
2019-11-05T17:03:03.685-0500 - Updated
2024-07-22T10:35:20.567-0400 - Versions
- N/A
- Fixed Versions
-
- 4.0
- Component
-
- Framework
Description
This is only an issue affecting the work in progress FLUID-6148 branch. During our reimplementation of fluid.notifyInitModel we have managed to swap the order of effects so that any material arriving in a component's model purely via relays does not end up triggering modelListeners. This was found when continuing to modernise the gpii-app code which contains definitions like so:
fluid.defaults("gpii.qss.buttonPresenter", {
...
modelRelay: {
title: {
target: "title",
singleTransform: {
type: "fluid.transforms.free",
func: "gpii.qss.buttonPresenter.getTitle",
args: [
"{gpii.qss}.model.isKeyedIn",
"{that}.model.item.schema.title"
]
}
}
},
modelListeners: {
title: {
"this": "{that}.dom.title",
method: "text",
args: ["{change}.value"]
},
Comments
-
Antranig Basman commented
2019-11-05T18:58:08.026-0500 Note that this issue only actually affects "contextualised" relays such as the fluid.transform.free block shown - direct or implicit relays get played through the relay system live, whereas contextualised relays such as above only get played after the conclusion of a "half-transaction" triggered by modelTransaction.commit().
-
Antranig Basman commented
2019-11-06T07:07:50.180-0500 Looks like this was not an issue in the old framework because of the old crude "initModelEvent" system which always notified via creating a fresh blank transaction with the original model value.