naive-ui/demo/documentation/components/cascader/zhCN/multipleLeafOnlyLazy.md
2020-02-04 21:44:48 +08:00

813 B

异步多项(仅叶子节点)

<n-cascader
  v-model="value"
  multiple
  placeholder="请选些什么"
  :options="options"
  style="flex-grow: 1; margin-right: 12px;"
  remote
  :on-load="handleLoad"
/>
function genChildren (option) {
  const children = []
  for (let i = 0; i <= option.depth; ++i) {
    children.push({
      label: option.label + '_' + i,
      value: option.label + '_' + i,
      isLeaf: option.depth === 3
    })
  }
  return children
}

const options = [
  {
    label: 'Root',
    value: 'root',
    isLeaf: false
  }
]

export default {
  data () {
    return {
      value: null,
      options: options
    }
  },
  methods: {
    handleLoad (option, resolve) {
      window.setTimeout(() => {
        resolve(genChildren(option))
      }, 1000)
    }
  }
}