alteryx / alteryx/Optimization

Syncing dataItems with the Mobx store

Offen
#11 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
idea
Vorherrschende Sprache
JavaScript
Sterne
0
Forks
0
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

``` js
import { extendObservable, observable, computed, autorun } from 'mobx'; //eslint-disable-line

const dataItems = [
{obsName: 'editorValue', dataName: 'FormulaFields', mode: 'read'},
{obsName: 'varList', dataName: 'fieldNames', mode: 'read'},
{obsName: 'constraints', dataName: 'constraints', mode: 'write'},
{obsName: 'objective', dataName: 'objective', mode: 'write'},
{obsName: 'fieldList', dataName: 'fieldList', mode: 'write'}
]

class AyxStore {
constructor(manager, dataItems){
dataItems.forEach(d => {
const item = manager.GetDataItemByDataName(d.dataName)
if (d.mode === 'read'){
this[d.obsName] = item.getValue()
item.BindUserDataChanged(v => { this[d.obsName] = v; })
} else {
this[d.obsName] = JSON.parse(item.getValue())
autorun(() => item.setValue(JSON.stringify(this[d.obsName].toJSON())))
}
})
}
}
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.