39 lines
4.9 KiB
JSON
39 lines
4.9 KiB
JSON
{
|
|
"slug": "autocomplete",
|
|
"mode": "single",
|
|
"examples": [
|
|
{
|
|
"id": "autocomplete-ex-1",
|
|
"title": "基础用法",
|
|
"titleSrc": "",
|
|
"desc": "",
|
|
"html": "<div class=\"kole-page\">\n <h2 class=\"kole-h2\">AutoComplete 自动完成</h2>\n <p class=\"kole-desc\">输入时匹配建议,高亮关键字,支持键盘上下选择与回车。</p>\n <div class=\"kole-demo\">\n <div class=\"kole-autocomplete\" id=\"ac\">\n <input class=\"kole-autocomplete-input\" id=\"input\" placeholder=\"输入城市,如「北」\" />\n <div class=\"kole-autocomplete-pop\" id=\"pop\" style=\"display:none\"></div>\n </div>\n <p class=\"kole-code-tip\" id=\"out\">试试输入:北京、上海、广州…</p>\n </div>\n</div>",
|
|
"preview": {
|
|
"show": [
|
|
[
|
|
0
|
|
]
|
|
],
|
|
"hide": [],
|
|
"mode": "single"
|
|
},
|
|
"previewSafe": true,
|
|
"previewUnsafeReasons": [],
|
|
"source": "curated",
|
|
"code": {
|
|
"html": "<h2>AutoComplete 自动完成</h2>\n<p>输入时匹配建议,高亮关键字,支持键盘上下选择与回车。</p>\n<div class=\"kole-autocomplete\">\n <input class=\"kole-autocomplete-input\" placeholder=\"输入城市,如「北」\" />\n <div class=\"kole-autocomplete-pop\" style=\"display:none\"></div>\n</div>\n<p>试试输入:北京、上海、广州…</p>",
|
|
"jsx": "import { useState } from 'react';\nimport { KoleAutoComplete } from 'kole-ui/react';\n\nconst CITIES = ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'];\n\nexport default function AutoCompleteDemo() {\n const [city, setCity] = useState('');\n\n return (\n <KoleAutoComplete\n modelValue={city}\n options={CITIES}\n placeholder=\"输入城市,如「北」\"\n onChange={setCity}\n onSelect={setCity}\n />\n );\n}",
|
|
"vue3": "<template>\n <KoleAutoComplete\n v-model=\"city\"\n :options=\"CITIES\"\n placeholder=\"输入城市,如「北」\"\n @select=\"onSelect\"\n />\n</template>\n\n<script setup>\nimport { ref } from 'vue';\nimport { KoleAutoComplete } from 'kole-ui/vue3';\n\nconst CITIES = ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'];\nconst city = ref('');\n\nfunction onSelect(value) {\n city.value = value;\n}\n</script>",
|
|
"vue2": "<template>\n <KoleAutoComplete\n v-model=\"city\"\n :options=\"CITIES\"\n placeholder=\"输入城市,如「北」\"\n @select=\"onSelect\"\n />\n</template>\n\n<script>\nimport { KoleAutoComplete } from 'kole-ui/vue2';\n\nexport default {\n components: { KoleAutoComplete },\n data() {\n return {\n CITIES: ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'],\n city: ''\n };\n },\n methods: {\n onSelect(value) {\n this.city = value;\n }\n }\n};\n</script>",
|
|
"tsx": "import { useState } from 'react';\nimport { KoleAutoComplete } from 'kole-ui/react';\n\nconst CITIES = ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'];\n\nexport default function AutoCompleteDemo(): JSX.Element {\n const [city, setCity] = useState<string>('');\n\n return (\n <KoleAutoComplete\n modelValue={city}\n options={CITIES}\n placeholder=\"输入城市,如「北」\"\n onChange={setCity}\n onSelect={setCity}\n />\n );\n}",
|
|
"vue3ts": "<template>\n\n <KoleAutoComplete\n v-model=\"city\"\n :options=\"CITIES\"\n placeholder=\"输入城市,如「北」\"\n @select=\"onSelect\"\n />\n</template>\n\n<script setup lang=\"ts\">\nimport { KoleAutoComplete } from 'kole-ui/vue3';\n\nconst CITIES = ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'];\nconst city = ref<string>('');\n\nfunction onSelect(value) {\n city.value = value;\n}\n</script>",
|
|
"vue2ts": "<template>\n\n <KoleAutoComplete\n v-model=\"city\"\n :options=\"CITIES\"\n placeholder=\"输入城市,如「北」\"\n @select=\"onSelect\"\n />\n</template>\n\n<script lang=\"ts\">\nimport Vue from 'vue';\nimport { KoleAutoComplete } from 'kole-ui/vue2';\n\nexport default {\n components: { KoleAutoComplete },\n data(): Record<string, unknown> {\n return {\n CITIES: ['北京', '上海', '广州', '深圳', '杭州', '成都', '重庆', '武汉', '西安', '南京', '苏州', '天津'],\n city: ''\n };\n },\n methods: {\n onSelect(value) {\n this.city = value;\n }\n }\n};\n</script>"
|
|
},
|
|
"notes": [
|
|
"依据 frameworks/AutoComplete.html 内联脚本的城市数组 data(北京/上海/广州/…/天津)与静态标记 input placeholder=输入城市,如「北」;modelValue/options/placeholder 见 AutoComplete.jsx 形参,Vue 端双向事件 update:modelValue 见 AutoComplete.vue3 defineEmits。"
|
|
]
|
|
}
|
|
],
|
|
"curated": true
|
|
}
|