1 |
- {"version":3,"sources":["webpack:///./resources/src/api/vue-routers.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///./resources/src/components/LzForm/index.vue?0a68","webpack:///./resources/src/api/admin-roles.js","webpack:///./resources/src/components/LzForm/index.vue?6710","webpack:///./resources/src/api/admin-perms.js","webpack:///./resources/src/views/vue-routers/Form.vue?177e","webpack:///resources/src/components/LzForm/index.vue","webpack:///./resources/src/components/LzForm/index.vue","webpack:///./resources/src/components/LzForm/index.vue?4c9f","webpack:///./resources/src/views/vue-routers/Form.vue?9bc2","webpack:///resources/src/views/vue-routers/Form.vue","webpack:///./resources/src/views/vue-routers/Form.vue?bd88","webpack:///./resources/src/views/vue-routers/Form.vue","webpack:///./resources/src/components/LzForm/FormHelper.js"],"names":["getVueRouters","params","axios","get","storeVueRouter","data","post","destroyVueRouter","id","delete","updateVueRouter","put","editVueRouter","updateVueRouters","_arrayWithHoles","arr","Array","isArray","_iterableToArrayLimit","i","Symbol","iterator","Object","_arr","_n","_d","_e","undefined","_s","_i","next","done","push","value","length","err","_nonIterableRest","TypeError","_slicedToArray","unsupportedIterableToArray","getAdminRoles","storeAdminRole","updateAdminRole","editAdminRole","getAdminPerms","storeAdminPerm","updateAdminPerm","editAdminPerm","staticRenderFns","name","components","FlexSpacer","inject","view","from","default","loading","stay","props","getData","Function","submit","errors","form","submitText","type","String","labelPosition","inDialog","Boolean","createdRedirect","p","updatedRedirect","this","$router","back","bind","disableRedirect","disableStay","editMode","computed","realLabelPosition","$store","state","miniWidth","created","copyMethods","methods","Form","m","apply","$refs","arguments","onReset","resetFields","watch","$route","handler","$active","_getData","immediate","render","defaultSlot","map","helper","replace","slot","h","options","propsData","formItem","model","on","class","style","width","directives","ref","component","_vm","_h","$createElement","_c","_self","staticClass","scopedSlots","_u","key","fn","proxy","attrs","onSubmit","$event","callback","$$v","$set","expression","_l","title","_v","text","pathHelper","pathSearch","icon","slug","LzForm","mixins","parent_id","path","order","cache","menu","roles","permission","vueRouters","permissions","vueRouterOptions","icons","initPaths","queryParentId","some","paths","keys","pages","cb","results","provide","formField","idField","resourceId","backupForm","getResourceId","formBak","JSON","parse","stringify","$data","fillForm","assignExists"],"mappings":"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","file":"js/chunk-4e3b5007.d969aefb.js","sourcesContent":["import axios from '@/plugins/axios'\r\n\r\nexport function getVueRouters(params = {}) {\r\n return axios.get('vue-routers', {\r\n params,\r\n })\r\n}\r\n\r\nexport function storeVueRouter(data) {\r\n return axios.post('vue-routers', data)\r\n}\r\n\r\nexport function destroyVueRouter(id) {\r\n return axios.delete(`vue-routers/${id}`)\r\n}\r\n\r\nexport function updateVueRouter(id, data) {\r\n return axios.put(`vue-routers/${id}`, data)\r\n}\r\n\r\nexport function editVueRouter(id) {\r\n return axios.get(`vue-routers/${id}/edit`)\r\n}\r\n\r\nexport function updateVueRouters(data) {\r\n return axios.put('vue-routers', data)\r\n}\r\n","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nimport nonIterableRest from \"./nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"","import axios from '@/plugins/axios'\r\n\r\nexport function getAdminRoles(params = {}) {\r\n return axios.get('admin-roles', { params })\r\n}\r\n\r\nexport function storeAdminRole(data) {\r\n return axios.post('admin-roles', data)\r\n}\r\n\r\nexport function destroyAdminRole(id) {\r\n return axios.delete(`admin-roles/${id}`)\r\n}\r\n\r\nexport function updateAdminRole(id, data) {\r\n return axios.put(`admin-roles/${id}`, data)\r\n}\r\n\r\nexport function editAdminRole(id) {\r\n return axios.get(`admin-roles/${id}/edit`)\r\n}\r\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=1&lang=scss&\"","import axios from '@/plugins/axios'\r\n\r\nexport function getAdminPerms(params = {}) {\r\n return axios.get('admin-permissions', {\r\n params,\r\n })\r\n}\r\n\r\nexport function storeAdminPerm(data) {\r\n return axios.post('admin-permissions', data)\r\n}\r\n\r\nexport function destroyAdminPerm(id) {\r\n return axios.delete(`admin-permissions/${id}`)\r\n}\r\n\r\nexport function updateAdminPerm(id, data) {\r\n return axios.put(`admin-permissions/${id}`, data)\r\n}\r\n\r\nexport function editAdminPerm(id) {\r\n return axios.get(`admin-permissions/${id}/edit`)\r\n}\r\n","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/index.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=style&index=0&lang=scss&\"","<script>\r\nimport _forIn from 'lodash/forIn'\r\nimport _get from 'lodash/get'\r\nimport Form from '@/plugins/element/components/Form'\r\nimport { getMessage, handleValidateErrors } from '@/libs/utils'\r\nimport FlexSpacer from '@c/FlexSpacer'\r\n\r\nexport default {\r\n name: 'LzForm',\r\n components: {\r\n FlexSpacer,\r\n },\r\n inject: {\r\n // 使用 FormHelper 混入,会自动提供该注入\r\n view: {\r\n from: 'view',\r\n default: null,\r\n },\r\n },\r\n data() {\r\n return {\r\n loading: false,\r\n stay: false,\r\n }\r\n },\r\n props: {\r\n getData: Function,\r\n submit: Function,\r\n errors: Object,\r\n form: Object,\r\n submitText: {\r\n type: String,\r\n default: '保存',\r\n },\r\n labelPosition: String,\r\n inDialog: Boolean,\r\n createdRedirect: {\r\n type: [String, Function],\r\n default() {\r\n const p = this.$route.path.split('/')\r\n return '/' + (p[p.length - 2] || '')\r\n },\r\n },\r\n updatedRedirect: {\r\n type: [String, Function],\r\n default() {\r\n return this.$router.back.bind(this.$router)\r\n },\r\n },\r\n disableRedirect: Boolean,\r\n disableStay: Boolean,\r\n editMode: Boolean,\r\n },\r\n computed: {\r\n realLabelPosition() {\r\n return this.labelPosition || (this.$store.state.miniWidth ? 'top' : 'right')\r\n },\r\n miniWidth() {\r\n return this.$store.state.miniWidth\r\n },\r\n },\r\n created() {\r\n this.copyMethods()\r\n },\r\n methods: {\r\n /**\r\n * 复制实际 Form 组件的方法, 给外部调用, 并把 this 指向 ElForm 实例\r\n */\r\n copyMethods() {\r\n // 原始 ElForm 和 重写的 Form\r\n [Form.extends.methods, Form.methods].forEach(methods => {\r\n _forIn(methods, (m, k) => {\r\n this[k] = function () {\r\n m.apply(this.$refs.form, arguments)\r\n }\r\n })\r\n })\r\n },\r\n async _getData() {\r\n this.loading = true\r\n this.view && this.$emit('update:form', this.view.formBak)\r\n\r\n try {\r\n this.getData && await this.getData()\r\n // 在某些情况下,会出现方法未定义,所以放到 nextTick 中\r\n this.$nextTick(() => {\r\n this.setInitialValues()\r\n })\r\n } catch (e) {\r\n Promise.reject(e)\r\n }\r\n\r\n this.loading = false\r\n },\r\n async onSubmit() {\r\n this.$emit('update:errors', {})\r\n try {\r\n this.submit && await this.submit()\r\n\r\n this.$message.success(getMessage(this.editMode ? 'updated' : 'created'))\r\n\r\n if (this.stay || this.disableRedirect) {\r\n return\r\n }\r\n\r\n let redirect = this.editMode ? this.updatedRedirect : this.createdRedirect\r\n if (typeof redirect === 'string') {\r\n this.$router.push(redirect)\r\n } else if (typeof redirect === 'function') {\r\n redirect()\r\n }\r\n } catch (e) {\r\n this.$emit('update:errors', handleValidateErrors(e.response))\r\n if (_get(e, 'response.status') !== 422) {\r\n Promise.reject(e)\r\n }\r\n }\r\n },\r\n onReset() {\r\n this.$refs.form.resetFields()\r\n },\r\n },\r\n watch: {\r\n $route: {\r\n handler() {\r\n this.$active && this._getData()\r\n },\r\n immediate: true,\r\n },\r\n },\r\n render(h) {\r\n let defaultSlot = this.$slots.default\r\n if (Array.isArray(defaultSlot)) {\r\n defaultSlot = defaultSlot.map((formItem) => {\r\n const options = formItem.componentOptions\r\n\r\n // 如果有 helper props,则生成一个新的 FormItem 替换掉原来的\r\n let { helper, label } = options.propsData\r\n if (helper) {\r\n helper = helper.replace(/\\n/g, '<br>')\r\n const labelSlot = h('template', {\r\n slot: 'label',\r\n }, [\r\n (<span>{label}</span>),\r\n (\r\n <el-tooltip\r\n effect=\"dark\"\r\n placement=\"top-start\"\r\n popper-class={`form-helper-popper ${this.miniWidth ? 'mini-width' : ''}`}\r\n >\r\n <div slot=\"content\" domPropsInnerHTML={helper}/>\r\n <i class=\"ml-1 el-icon-question helper\"/>\r\n </el-tooltip>\r\n ),\r\n ])\r\n return h('el-form-item', {\r\n props: options.propsData,\r\n }, [labelSlot, ...options.children])\r\n } else {\r\n return formItem\r\n }\r\n })\r\n }\r\n\r\n const stayCheckbox = !this.disableStay && (\r\n <el-checkbox\r\n vModel={this.stay}\r\n title=\"表单提交后,留在此页\"\r\n >\r\n 留在此页\r\n </el-checkbox>\r\n )\r\n\r\n const footerSlot = this.$slots.footer || (\r\n <el-form-item class=\"footer\">\r\n <loading-action type=\"primary\" action={this.onSubmit}>{this.submitText}</loading-action>\r\n <el-button vOn:click={this.onReset}>重置</el-button>\r\n {this.$slots.footerAppend}\r\n <flex-spacer/>\r\n\r\n </el-form-item>\r\n )\r\n\r\n // 用 jsx,ElForm 组件的 model props 传不进去,,,\r\n return h('el-form', {\r\n props: {\r\n model: this.form,\r\n errors: this.errors,\r\n labelPosition: this.realLabelPosition,\r\n ...this.$attrs,\r\n },\r\n on: {\r\n ...this.$listeners,\r\n },\r\n class: {\r\n 'in-dialog': this.inDialog,\r\n },\r\n style: {\r\n width: this.inDialog ? 'auto' : '800px',\r\n },\r\n directives: [\r\n {\r\n name: 'loading',\r\n value: this.loading,\r\n },\r\n ],\r\n ref: 'form',\r\n }, [defaultSlot, footerSlot])\r\n },\r\n}\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n@import '~element-ui/packages/theme-chalk/src/common/var';\r\n\r\n.footer {\r\n /deep/ {\r\n .el-form-item__content {\r\n display: flex;\r\n }\r\n }\r\n}\r\n\r\n.in-dialog {\r\n .footer {\r\n text-align: right;\r\n margin-bottom: 0;\r\n }\r\n}\r\n\r\n.helper {\r\n color: $--color-primary;\r\n border: 2px solid transparent;\r\n border-radius: 50%;\r\n transition: border-color .3s;\r\n\r\n &:hover {\r\n border-color: $--color-primary-light-1;\r\n }\r\n}\r\n</style>\r\n\r\n<style lang=\"scss\">\r\n.form-helper-popper {\r\n max-width: 400px;\r\n\r\n &.mini-width {\r\n max-width: 90%;\r\n }\r\n}\r\n</style>\r\n","var render, staticRenderFns\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=3084f0c4&scoped=true&lang=scss&\"\nimport style1 from \"./index.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3084f0c4\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('el-card',{staticClass:\"create\",scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('content-header')]},proxy:true}])},[_c('el-row',{attrs:{\"type\":\"flex\",\"justify\":\"center\"}},[_c('lz-form',{ref:\"form\",attrs:{\"get-data\":_vm.getData,\"submit\":_vm.onSubmit,\"errors\":_vm.errors,\"form\":_vm.form,\"edit-mode\":_vm.editMode},on:{\"update:errors\":function($event){_vm.errors=$event},\"update:form\":function($event){_vm.form=$event}}},[_c('el-form-item',{attrs:{\"label\":\"父级路由\",\"prop\":\"parent_id\"}},[_c('el-select',{attrs:{\"filterable\":\"\",\"clearable\":\"\",\"placeholder\":\"一级\"},model:{value:(_vm.form.parent_id),callback:function ($$v) {_vm.$set(_vm.form, \"parent_id\", $$v)},expression:\"form.parent_id\"}},_vm._l((_vm.vueRouterOptions),function(i){return _c('el-option',{key:i.id,attrs:{\"label\":i.title,\"value\":i.id}},[_c('span',[_vm._v(_vm._s(i.text))])])}),1)],1),_c('el-form-item',{attrs:{\"label\":\"标题\",\"required\":\"\",\"prop\":\"title\"}},[_c('el-input',{model:{value:(_vm.form.title),callback:function ($$v) {_vm.$set(_vm.form, \"title\", $$v)},expression:\"form.title\"}})],1),_c('el-form-item',{attrs:{\"label\":\"地址\",\"prop\":\"path\",\"helper\":_vm.pathHelper}},[_c('el-autocomplete',{staticClass:\"w-100\",attrs:{\"fetch-suggestions\":_vm.pathSearch,\"clearable\":\"\"},model:{value:(_vm.form.path),callback:function ($$v) {_vm.$set(_vm.form, \"path\", $$v)},expression:\"form.path\"}})],1),_c('el-form-item',{attrs:{\"label\":\"图标\",\"prop\":\"icon\"}},[_c('el-input',{staticClass:\"icon\",model:{value:(_vm.form.icon),callback:function ($$v) {_vm.$set(_vm.form, \"icon\", $$v)},expression:\"form.icon\"}},[_c('el-select',{attrs:{\"slot\":\"prepend\",\"placeholder\":\"图标\"},slot:\"prepend\",model:{value:(_vm.form.icon),callback:function ($$v) {_vm.$set(_vm.form, \"icon\", $$v)},expression:\"form.icon\"}},_vm._l((_vm.icons),function(i){return _c('el-option',{key:i,attrs:{\"label\":\"图标\",\"value\":i}},[_c('svg-icon',{staticClass:\"mr-2\",attrs:{\"icon-class\":i}}),_c('span',{staticClass:\"fr\"},[_vm._v(_vm._s(i))])],1)}),1),_c('svg-icon',{attrs:{\"slot\":\"append\",\"icon-class\":_vm.form.icon || 'cog-fill'},slot:\"append\"})],1)],1),_c('el-form-item',{attrs:{\"label\":\"排序\",\"prop\":\"order\"}},[_c('el-input-number',{attrs:{\"min\":-9999,\"max\":9999},model:{value:(_vm.form.order),callback:function ($$v) {_vm.$set(_vm.form, \"order\", $$v)},expression:\"form.order\"}})],1),_c('el-form-item',{attrs:{\"label\":\"显示在菜单\",\"prop\":\"menu\"}},[_c('el-switch',{attrs:{\"active-text\":\"显示\",\"inactive-text\":\"隐藏\"},model:{value:(_vm.form.menu),callback:function ($$v) {_vm.$set(_vm.form, \"menu\", $$v)},expression:\"form.menu\"}})],1),_c('el-form-item',{attrs:{\"label\":\"缓存\",\"prop\":\"cache\"}},[_c('el-switch',{attrs:{\"active-text\":\"缓存\",\"inactive-text\":\"不缓存\"},model:{value:(_vm.form.cache),callback:function ($$v) {_vm.$set(_vm.form, \"cache\", $$v)},expression:\"form.cache\"}})],1),_c('el-form-item',{attrs:{\"label\":\"角色\",\"prop\":\"roles\"}},[_c('el-select',{attrs:{\"disabled\":\"\",\"multiple\":\"\",\"placeholder\":\"选择角色\",\"filterable\":\"\",\"clearable\":\"\"},model:{value:(_vm.form.roles),callback:function ($$v) {_vm.$set(_vm.form, \"roles\", $$v)},expression:\"form.roles\"}},_vm._l((_vm.roles),function(i){return _c('el-option',{key:i.id,attrs:{\"label\":i.name,\"value\":i.id}})}),1)],1),_c('el-form-item',{attrs:{\"label\":\"权限\",\"prop\":\"permission\"}},[_c('el-select',{attrs:{\"disabled\":\"\",\"placeholder\":\"选择权限\",\"filterable\":\"\",\"clearable\":\"\"},model:{value:(_vm.form.permission),callback:function ($$v) {_vm.$set(_vm.form, \"permission\", $$v)},expression:\"form.permission\"}},_vm._l((_vm.permissions),function(i){return _c('el-option',{key:i.id,attrs:{\"label\":i.name,\"value\":i.slug}})}),1)],1)],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\r\n <el-card class=\"create\">\r\n <template #header>\r\n <content-header/>\r\n </template>\r\n <el-row type=\"flex\" justify=\"center\">\r\n <lz-form\r\n ref=\"form\"\r\n :get-data=\"getData\"\r\n :submit=\"onSubmit\"\r\n :errors.sync=\"errors\"\r\n :form.sync=\"form\"\r\n :edit-mode=\"editMode\"\r\n >\r\n <el-form-item label=\"父级路由\" prop=\"parent_id\">\r\n <el-select\r\n v-model=\"form.parent_id\"\r\n filterable\r\n clearable\r\n placeholder=\"一级\"\r\n >\r\n <el-option\r\n v-for=\"i of vueRouterOptions\"\r\n :key=\"i.id\"\r\n :label=\"i.title\"\r\n :value=\"i.id\"\r\n >\r\n <span>{{ i.text }}</span>\r\n </el-option>\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item\r\n label=\"标题\"\r\n required\r\n prop=\"title\"\r\n >\r\n <el-input v-model=\"form.title\"/>\r\n </el-form-item>\r\n <el-form-item label=\"地址\" prop=\"path\" :helper=\"pathHelper\">\r\n <el-autocomplete\r\n class=\"w-100\"\r\n v-model=\"form.path\"\r\n :fetch-suggestions=\"pathSearch\"\r\n clearable\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"图标\" prop=\"icon\">\r\n <el-input v-model=\"form.icon\" class=\"icon\">\r\n <el-select v-model=\"form.icon\" slot=\"prepend\" placeholder=\"图标\">\r\n <el-option\r\n v-for=\"i of icons\"\r\n :key=\"i\"\r\n label=\"图标\"\r\n :value=\"i\"\r\n >\r\n <svg-icon class=\"mr-2\" :icon-class=\"i\"/>\r\n <span class=\"fr\">{{ i }}</span>\r\n </el-option>\r\n </el-select>\r\n <svg-icon slot=\"append\" :icon-class=\"form.icon || 'cog-fill'\"/>\r\n </el-input>\r\n </el-form-item>\r\n <el-form-item label=\"排序\" prop=\"order\">\r\n <el-input-number v-model=\"form.order\" :min=\"-9999\" :max=\"9999\"/>\r\n </el-form-item>\r\n <el-form-item label=\"显示在菜单\" prop=\"menu\">\r\n <el-switch\r\n v-model=\"form.menu\"\r\n active-text=\"显示\"\r\n inactive-text=\"隐藏\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"缓存\" prop=\"cache\">\r\n <el-switch\r\n v-model=\"form.cache\"\r\n active-text=\"缓存\"\r\n inactive-text=\"不缓存\"\r\n />\r\n </el-form-item>\r\n <el-form-item label=\"角色\" prop=\"roles\">\r\n <el-select\r\n disabled\r\n v-model=\"form.roles\"\r\n multiple\r\n placeholder=\"选择角色\"\r\n filterable\r\n clearable\r\n >\r\n <el-option\r\n v-for=\"i of roles\"\r\n :key=\"i.id\"\r\n :label=\"i.name\"\r\n :value=\"i.id\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n <el-form-item label=\"权限\" prop=\"permission\">\r\n <el-select\r\n disabled\r\n v-model=\"form.permission\"\r\n placeholder=\"选择权限\"\r\n filterable\r\n clearable\r\n >\r\n <el-option\r\n v-for=\"i of permissions\"\r\n :key=\"i.id\"\r\n :label=\"i.name\"\r\n :value=\"i.slug\"\r\n />\r\n </el-select>\r\n </el-form-item>\r\n </lz-form>\r\n </el-row>\r\n </el-card>\r\n</template>\r\n<script>\r\nimport { nestedToSelectOptions, toInt } from '@/libs/utils'\r\nimport { editVueRouter, getVueRouters, storeVueRouter, updateVueRouter } from '@/api/vue-routers'\r\nimport LzForm from '@c/LzForm'\r\nimport { getAdminRoles } from '@/api/admin-roles'\r\nimport { getAdminPerms } from '@/api/admin-perms'\r\nimport FormHelper from '@c/LzForm/FormHelper'\r\nimport icons from '@/icons'\r\nimport pages from '@v/pages'\r\n\r\nexport default {\r\n name: 'Form',\r\n components: {\r\n LzForm,\r\n },\r\n mixins: [\r\n FormHelper,\r\n ],\r\n data() {\r\n return {\r\n form: {\r\n parent_id: 0,\r\n title: '',\r\n path: '',\r\n icon: '',\r\n order: 0,\r\n cache: false,\r\n menu: false,\r\n roles: [],\r\n permission: '',\r\n },\r\n errors: {},\r\n vueRouters: [],\r\n roles: [],\r\n permissions: [],\r\n\r\n pathHelper: '地址可以有三种:\\n' +\r\n '1:以 http 开头的完整 url,会在新窗口中打开;\\n' +\r\n '2:以斜杠 \\'/\\' 开头的,不会匹配生成路由配置,\\n' +\r\n '一般用于打开其他路由的不同参数的 url;\\n' +\r\n '3:其他则会去匹配组件,并生成路由配置。',\r\n }\r\n },\r\n computed: {\r\n vueRouterOptions() {\r\n return nestedToSelectOptions(this.vueRouters)\r\n },\r\n icons() {\r\n return icons\r\n },\r\n },\r\n created() {\r\n this.initPaths()\r\n },\r\n methods: {\r\n queryParentId() {\r\n const id = toInt(this.$route.query.parent_id)\r\n if (this.vueRouterOptions.some(i => i.id === id)) {\r\n return id\r\n } else {\r\n return 0\r\n }\r\n },\r\n async onSubmit() {\r\n if (this.editMode) {\r\n await updateVueRouter(this.resourceId, this.form)\r\n } else {\r\n await storeVueRouter(this.form)\r\n }\r\n },\r\n async getData() {\r\n const [\r\n { data: vueRouters },\r\n { data: roles },\r\n { data: permissions },\r\n ] = await Promise.all([\r\n getVueRouters({ except: this.resourceId }),\r\n getAdminRoles({ all: 1 }),\r\n getAdminPerms({ all: 1 }),\r\n ])\r\n\r\n this.vueRouters = vueRouters\r\n !this.editMode && (this.form.parent_id = this.queryParentId())\r\n this.roles = roles\r\n this.permissions = permissions\r\n\r\n if (this.editMode) {\r\n const { data } = await editVueRouter(this.resourceId)\r\n this.fillForm(data)\r\n }\r\n },\r\n initPaths() {\r\n this.paths = Object.keys(pages).sort().map((i) => ({ value: i }))\r\n },\r\n pathSearch(q, cb) {\r\n const results = q\r\n ? this.paths.filter((i) => (i.value.indexOf(q) !== -1))\r\n : this.paths\r\n cb(results)\r\n },\r\n },\r\n}\r\n</script>\r\n\r\n<style lang=\"scss\">\r\n.icon {\r\n .el-select .el-input {\r\n width: 80px;\r\n }\r\n}\r\n</style>\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Form.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Form.vue?vue&type=template&id=755b1678&\"\nimport script from \"./Form.vue?vue&type=script&lang=js&\"\nexport * from \"./Form.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Form.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { assignExists } from '@/libs/utils'\r\n\r\nexport default {\r\n provide() {\r\n return {\r\n view: this,\r\n }\r\n },\r\n data() {\r\n return {\r\n /**\r\n * 保存表单数据的键名\r\n */\r\n formField: 'form',\r\n /**\r\n * 编辑时,路由中的动态值\r\n */\r\n idField: 'id',\r\n }\r\n },\r\n computed: {\r\n editMode() {\r\n return !!this.resourceId\r\n },\r\n resourceId() {\r\n return this.$route.params[this.idField]\r\n },\r\n },\r\n created() {\r\n this.backupForm()\r\n },\r\n methods: {\r\n getResourceId(key = 'id') {\r\n return this.$route.params[key]\r\n },\r\n /**\r\n * 备份表单原始数据,路由切换时,用来重置表单\r\n */\r\n backupForm() {\r\n this.formBak = JSON.parse(JSON.stringify(this.$data[this.formField]))\r\n },\r\n /**\r\n * 填充表单数据\r\n *\r\n * @param data\r\n */\r\n fillForm(data) {\r\n this.$data[this.formField] = assignExists(this.$data[this.formField], data)\r\n },\r\n },\r\n}\r\n"],"sourceRoot":""}
|