Flux 模式实现:DeLorean

jopen 10年前

DeLoreanjs(Delorean.js) 是 Flux 模式迷你实现:

  • 单向数据流,是的你的应用逻辑比 MVC 还简单

  • 自动监听数据变化情况,保持数据持续更新

  • 这是个很完整的框架,没有视图框架

  • 非常小,压缩后只有 4K

  • 内置 React.js 集成,易于使用 Flight.js 和 Reactive.js 或者其他的 JS 库

  • 使用回滚提高 UI 和数据的一致性

示例:

/* * Stores are simple data buckets which manages data. */var Store = Flux.createStore({    data: null,    setData: function (data) {      this.data = data;      this.emit('change');    },    actions: {      'incoming-data': 'setData'    }});var store = new Store();/* * Dispatchers are simple action dispatchers for stores. * Stores handle the related action. */var Dispatcher = Flux.createDispatcher({    setData: function (data) {      this.dispatch('incoming-data', data);    },    getStores: function () {      return {increment: store};    }});/* * Action Creators are simple controllers. They are simple functions. *  They talk to dispatchers. They are not required. */var Actions = {    setData: function (data) {      Dispatcher.setData(data);    }};// The data cycle.store.onChange(function () {    // End of data cycle.    document.getElementById('result').innerText = store.store.data;});document.getElementById('dataChanger').onclick = function () {    // Start data cycle:    Actions.setData(Math.random());};

项目主页:http://www.open-open.com/lib/view/home/1411950675734