Skip to content

Experiments with SAPUI5 and functional reactive programming paradigms

License

Notifications You must be signed in to change notification settings

swennemers/ui5.frp-experiments

Repository files navigation

Experiments with SAPUI5 and functional reactive programming paradigms

Start the presentation on github: https://swennemers.github.io/ui5.frp-experiments/

How to run locally

npm install
grunt serve

How to do FLUX

With pure SAPUI5

  • Dispatcher (with Queue) via SAPUI5 Event Bus
  • Reducer listen on Event Bus and update JSON Model
  • JSON Model as State with Unidirectional Binding on standard controls
  • Controls emit "Actions" See 01-Todo-PlainUI5.html

With Redux

Instead of using the event bus, events are dispatched to the redux store, state is mapped to a JSON Model to update the controls. See 02-Todo-Redux.html

Instead of using the JSON Model, controls are destroyed and recreated on each state change. See 03-Todo-Redux-rerender.html

  • currently ui5 controls too heavy weight
  • light weight controls?

Reactive SAPUI5 (Rx.js)

Every event will become a stream (click + click$). There is a mixin that will patch the <event>$ methods for each event

The counter example with draw cycle inspired visualization: See 04-Counter-Rxjs.html

Wikipedia Live search: See 05-Wikipedia-live-search-Rxjs.html

Further Reads

About

Experiments with SAPUI5 and functional reactive programming paradigms

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published