cione-comp-lib
Version:
`$ yarn add cione-comp-lib` 或者 `$ npm i cione-comp-lib -S`
51 lines (50 loc) • 1.79 kB
JavaScript
import { openBlock, createElementBlock, normalizeClass, createElementVNode, withModifiers, toDisplayString, createCommentVNode, normalizeProps, guardReactiveProps, Fragment, renderList } from "vue";
import style0 from "./Dropdown.vue_used_vue_type_style_index_0_lang.module.mjs";
import _export_sfc from "../../../../_virtual/plugin-vue_export-helper.mjs";
const _sfc_main = {
name: "Dropdown",
inheritAttrs: false,
props: {
label: {
type: String,
default: ""
},
options: {
type: Array,
required: true
},
value: {
type: [String, Number],
required: false,
default: null
}
}
};
const _hoisted_1 = { key: 0 };
const _hoisted_2 = ["selected", "value"];
function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
return openBlock(), createElementBlock("div", {
class: normalizeClass(_ctx.$style.dropdown)
}, [
createElementVNode("label", {
onContextmenu: _cache[0] || (_cache[0] = withModifiers(() => {
}, ["prevent"]))
}, [
$props.label ? (openBlock(), createElementBlock("span", _hoisted_1, toDisplayString($props.label), 1)) : createCommentVNode("", true),
createElementVNode("select", normalizeProps(guardReactiveProps(_ctx.$attrs)), [
(openBlock(true), createElementBlock(Fragment, null, renderList($props.options, ([k, v]) => {
return openBlock(), createElementBlock("option", {
key: k,
selected: k === $props.value,
value: k
}, toDisplayString(v), 9, _hoisted_2);
}), 128))
], 16)
], 32)
], 2);
}
const cssModules = {
"$style": style0
};
var Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["__cssModules", cssModules]]);
export { Dropdown as default };