mirror of
https://github.com/tusen-ai/naive-ui.git
synced 2024-12-09 04:31:35 +08:00
67 lines
1.4 KiB
Vue
67 lines
1.4 KiB
Vue
<template>
|
|
<div class="n-doc-section">
|
|
<div class="n-doc-section__header">
|
|
Single Search
|
|
</div>
|
|
<div
|
|
class="n-doc-section__view"
|
|
style="flex-wrap: nowrap;"
|
|
>
|
|
<!--EXAMPLE_START-->
|
|
<n-cascader
|
|
v-model="value"
|
|
placeholder="Please Select Something"
|
|
:options="options"
|
|
style="flex-grow: 1; margin-right: 12px;"
|
|
filterable
|
|
/>
|
|
<!--EXAMPLE_END-->
|
|
</div>
|
|
<pre class="n-doc-section__inspect">v-model: {{ JSON.stringify(value) }}</pre>
|
|
<n-doc-source-block>
|
|
<!--SOURCE-->
|
|
</n-doc-source-block>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
function genOptions (depth = 3, iterator = 1, prefix = '') {
|
|
const length = 12
|
|
const options = []
|
|
for (let i = 1; i <= length; ++i) {
|
|
if (iterator === 1) {
|
|
options.push({
|
|
value: `${i}`,
|
|
label: `${i}`,
|
|
disabled: i % 5 === 0,
|
|
children: genOptions(depth, iterator + 1, '' + i)
|
|
})
|
|
} else if (iterator === depth) {
|
|
options.push({
|
|
value: `${prefix}-${i}`,
|
|
label: `${prefix}-${i}`,
|
|
disabled: i % 5 === 0
|
|
|
|
})
|
|
} else {
|
|
options.push({
|
|
value: `${prefix}-${i}`,
|
|
label: `${prefix}-${i}`,
|
|
disabled: i % 5 === 0,
|
|
children: genOptions(depth, iterator + 1, `${prefix}-${i}`)
|
|
})
|
|
}
|
|
}
|
|
return options
|
|
}
|
|
|
|
export default {
|
|
data () {
|
|
return {
|
|
value: null,
|
|
options: genOptions()
|
|
}
|
|
}
|
|
}
|
|
</script>
|