genChildren(ast) {
    let children = []
    if (ast.children && ast.children.length) {
      children = children.concat(
        ast.children.map(v => {
          return this.genElement(v)
        }),
      )
    }
    if (ast.scopedSlots) {
      children = children.concat(
        Object.keys(ast.scopedSlots)
          .map(v => ast.scopedSlots[v])
          .map(v => {
            const slotCode = this.genElement(v) || ''
            const slotScope = v.slotScope
            const render = `render: (${slotScope}) => ${slotCode.trim()}`
            const type = `type: '${COMMON.template.type}'`
            const slot = `'dataSlot': ${v.slotTarget}`
            const code = `{${type},${render},${slot}}`
            return code
          }),
      )
    }
    return children
  }
gen children, include slot template generate
@param {Object} ast