# All files / src/miniprogram syncPropsToData.ts

92.85% Statements 13/14
50% Branches 3/6
100% Functions 4/4
92.85% Lines 13/14

Press n or j to go to the next uncovered block, b, p or k for the previous block.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    1x
    1x

    2x
    2x
    2x
    2x
    2x
    2x
    2x

    2x

    2x
    2x
     export function syncPropsToData (computed: object) {
      const sync = (data: object) => {
        return Object.keys(computed).reduce((acc, key) => {
          const userDef = computed[key]
          const getter = typeof userDef === 'function' ? userDef : userDef.get
          if (getter) {
            const value = getter.call(data, data)
            return { ...acc, [key]: value }
          }E
          return acc
        }, {})
      }
      return Behavior({
        definitionFilter(defFields) {
          defFields.data = defFields.data || {}
          defFields.data = Object.assign(defFields.data, sync(defFields.data))
        },
      })
    }