UNPKG

sohelp-ele

Version:

SohelpEle Library

213 lines (212 loc) 5.75 kB
(function() { "use strict"; try { if (typeof document != "undefined") { var elementStyle = document.createElement("style"); elementStyle.appendChild(document.createTextNode(".sohelp-dyn-select[data-v-762d2f6f]{ width: 100%;}")); document.head.appendChild(elementStyle); } } catch (e) { console.error("vite-plugin-css-injected-by-js", e); } })(); var render = function() { var _vm = this; var _h = _vm.$createElement; var _c = _vm._self._c || _h; return _c("el-select", _vm._g(_vm._b({ staticClass: "sohelp-dyn-select", attrs: { "clearable": _vm.clearable, "filterable": _vm.filterable, "value": _vm.value, "disabled": _vm.disabled }, on: { "update:value": function($event) { _vm.value = $event; }, "change": _vm.change } }, "el-select", _vm.$attrs, false), _vm.$listeners), _vm._l(_vm.options, function(item) { return _c("el-option", { key: item.value, attrs: { "label": item.label, "value": item.value } }); }), 1); }; var staticRenderFns = []; var index_vue_vue_type_style_index_0_scoped_true_lang = ""; function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) { var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports; if (render2) { options.render = render2; options.staticRenderFns = staticRenderFns2; options._compiled = true; } if (functionalTemplate) { options.functional = true; } if (scopeId) { options._scopeId = "data-v-" + scopeId; } var hook; if (moduleIdentifier) { hook = function(context) { context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") { context = __VUE_SSR_CONTEXT__; } if (injectStyles) { injectStyles.call(this, context); } if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier); } }; options._ssrRegister = hook; } else if (injectStyles) { hook = shadowMode ? function() { injectStyles.call( this, (options.functional ? this.parent : this).$root.$options.shadowRoot ); } : injectStyles; } if (hook) { if (options.functional) { options._injectStyles = hook; var originalRender = options.render; options.render = function renderWithStyleInjection(h, context) { hook.call(context); return originalRender(h, context); }; } else { var existing = options.beforeCreate; options.beforeCreate = existing ? [].concat(existing, hook) : [hook]; } } return { exports: scriptExports, options }; } const __vue2_script = { name: "SohelpDynSelect", props: { autoRead: { type: Boolean, default: true }, clearable: { type: Boolean, default: true }, filterable: { type: Boolean, default: true }, namespace: { type: String, value: "" }, url: { type: String, value: "/engine/service/crud/query" }, params: { type: Object }, mappingFields: { type: Object, value: { label: "", value: "" } }, data: { type: Array }, value: [String, Number, Array] }, data() { return { baseParams: {}, options: [], disabled: false }; }, methods: { change(val) { var _a; let _label = (_a = this.options.find((item) => item.value === val)) == null ? void 0 : _a.label; this.$emit("change", val, _label); }, mappingFieldsLists(_data) { if ((_data == null ? void 0 : _data.length) < 1) { return _data; } let _arr = []; if (this.mappingFields) { _arr = _data.map((item) => { return { label: item[this.mappingFields.label] || "", value: item[this.mappingFields.value] || "" }; }); } else { _arr = _data; } let _temp = _arr.filter((item) => { return item.label && item.value; }); if (!_temp.length) { this.$message.error("label\u3001value \u5C5E\u6027\u6620\u5C04\u9519\u8BEF"); return false; } return _temp; }, load(params) { if (this.data) { this.options = this.data; return false; } let _params = {}; if (this.namespace) { _params["namespace"] = this.namespace; } if (params) { _params = { ...{}, ...params }; } SohelpHttp.get(this.url, _params).then((res) => { if (res.meta.success) { const _res = res.data; if (_res.length) { this.options = this.mappingFieldsLists(_res); } } }).catch((err) => { this.$message.error(err); }); }, reload(params) { let _params = { ...this.baseParams, ...params }; this.load(_params); }, refresh() { this.reload({}); } }, mounted() { this.disabled = this.$attrs.disabled || false; this.baseParams = this.$attrs.params || this.params; if (this.autoRead) { this.load(this.baseParams); } } }; const __cssModules = {}; var __component__ = /* @__PURE__ */ normalizeComponent( __vue2_script, render, staticRenderFns, false, __vue2_injectStyles, "762d2f6f", null, null ); function __vue2_injectStyles(context) { for (let o in __cssModules) { this[o] = __cssModules[o]; } } var index = /* @__PURE__ */ function() { return __component__.exports; }(); export { index as default };