UNPKG

@fecp/mobile

Version:

90 lines (89 loc) 3.7 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); ;/* empty css */ ;/* empty css */ ;/* empty css */ ;/* empty css */ ;/* empty css */ ;/* empty css */ ;/* empty css */ const vue = require("vue"); ;/* empty css */ const _pluginVue_exportHelper = require("../../../../../../_virtual/_plugin-vue_export-helper.js"); const index = require("../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/tabs/index.js"); const index$1 = require("../../../../../../node_modules/.pnpm/vant@4.9.17_vue@3.5.13_typescript@5.7.3_/node_modules/vant/es/tab/index.js"); const _hoisted_1 = { class: "fec-tab-content" }; const _sfc_main = { __name: "Tabs", props: { modelValue: { type: String, default: "" }, options: { type: Array, default: [] }, autoHeight: { //高度自适应 type: Boolean, default: true }, height: { //高度 type: String, default: "300" } }, emits: ["update:modelValue"], setup(__props, { emit: __emit }) { const props = __props; const emit = __emit; const activeName = vue.computed({ get: () => { return props.modelValue; }, set: (val) => { emit("update:modelValue", val); } }); const compHeight = vue.computed(() => { if (props.autoHeight) { return "100%"; } else { return props.height + "px"; } }); return (_ctx, _cache) => { const _component_van_tab = index$1.Tab; const _component_van_tabs = index.Tabs; return vue.openBlock(), vue.createElementBlock("div", { class: "fec-tabs-container", style: vue.normalizeStyle("height:" + vue.unref(compHeight)) }, [ vue.createVNode(_component_van_tabs, vue.mergeProps(_ctx.$attrs, { class: "fec-tabs", active: vue.unref(activeName), "onUpdate:active": _cache[0] || (_cache[0] = ($event) => vue.isRef(activeName) ? activeName.value = $event : null), animated: "", ellipsis: "" }), { default: vue.withCtx(() => [ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.options, (item) => { return vue.openBlock(), vue.createBlock(_component_van_tab, vue.mergeProps({ ref_for: true }, item, { "show-zero-badge": false, replace: "" }), null, 16); }), 256)) ]), _: 1 }, 16, ["active"]), vue.createElementVNode("div", _hoisted_1, [ vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ]) ], 4); }; } }; const _Tabs = /* @__PURE__ */ _pluginVue_exportHelper.default(_sfc_main, [["__scopeId", "data-v-b371b7d3"]]); exports.default = _Tabs;