npm install --save mobx-miniprogram mobx-miniprogram-bindings
import { observable, action } from 'mobx-miniprogram'
export const store = observable({
// 数据字段
percent: 0,
percent2: 0,
// 计算属性
get sum() {
return this.numA + this.numB
},
// actions 方法
setPercent: action(function (num = 0) {
this.percent = num
})
})
import { createStoreBindings } from 'mobx-miniprogram-bindings'
import { store } from '../../store/index'
Page({
data: {},
onLoad(options) {
this.storeBindings = createStoreBindings(this, {
store,
fields: {
numA: 'numA',
num2: 'num2',
sum: 'sum'
},
actions: ['update', 'setPercent']
})
},
onUnload() {
this.storeBindings.destroyStoreBindings()
},
changeVal() {
this.setPercent(66)
}
})
const app = getApp()
import { storeBindingsBehavior } from 'mobx-miniprogram-bindings'
import { store } from '@/utils/mobx'
Component({
behaviors: [storeBindingsBehavior],
storeBindings: {
store,
fields: {
percent: 'percent'
},
actions: ['setPercent']
}
})
userStore.js cartStore.js orderStore.js
createStoreBindings(this, { store: xxx })
storeBindings: {
store: xxx
}