Procházet zdrojové kódy

Signed-off-by: zhaobao <528046418@qq.com>

zhaobao před 3 roky
rodič
revize
dc1c6eeaba

+ 15 - 5
src/components/AppSelector/index.vue → src/components/AppCatSelector/index.vue

@@ -1,13 +1,25 @@
 <script lang="ts" setup name="AppCatSelector">
 import { getAppCatByList } from '@/api/apps/appCatApi'
+const props = withDefaults(defineProps<{
+  modelValue: number
+}>(), {
+  modelValue: 0,
+})
 const emit = defineEmits(['update:modelValue'])
 interface AppCat {
   appCatId: number
   appCatTitle: number
 }
+const appCatId = computed({
+  get: () => {
+    return props.modelValue
+  },
+  set: (val) => {
+    emit('update:modelValue', val)
+  },
+})
 const state = reactive({
   loading: false,
-  appCatId: 0,
   dataList: [] as AppCat[],
 })
 
@@ -17,16 +29,14 @@ const getData = async () => {
   state.loading = false
   state.dataList = data
 }
-const onChange = () => {
-  emit('update:modelValue', state.appCatId)
-}
 onMounted(() => {
   getData ()
 })
 </script>
 
 <template>
-  <el-select v-model="state.appCatId" v-loading="state.loading" style="width: 100%" filterable placeholder="请选择应用分类" value-key="appCatId" @change="onChange">
+  <el-select v-model="appCatId" v-loading="state.loading" style="width: 100%" filterable placeholder="请选择应用分类" value-key="appCatId">
+    <el-option key="0" label="请选择" :value="0" disabled />
     <el-option
       v-for="item in state.dataList"
       :key="item.appCatId"

+ 1 - 0
src/types/components.d.ts

@@ -9,6 +9,7 @@ export {}
 
 declare module '@vue/runtime-core' {
   export interface GlobalComponents {
+    AppCatSelector: typeof import('./../components/AppCatSelector/index.vue')['default']
     AppSelector: typeof import('./../components/AppSelector/index.vue')['default']
     Auth: typeof import('./../components/Auth/index.vue')['default']
     AuthAll: typeof import('./../components/AuthAll/index.vue')['default']

+ 1 - 1
src/views/app_center/permit/index.vue

@@ -85,7 +85,7 @@ const permitTableRef = ref()
 const permitRef = ref()
 
 const onPermitAdd = () => {
-  permitRef.value.showAddModel(route.params.appId, state.curRoleId)
+  permitRef.value.showAddModel(parseInt(route.params.appId.toString()), state.curRoleId)
 }
 // 返回列表页
 function goBack() {

+ 1 - 1
src/views/app_center/publish/index.vue

@@ -88,7 +88,7 @@ function onSubmit() {
               <el-input v-model="state.formData.appTitle" />
             </el-form-item>
 
-            <el-form-item label="分类" prop="appCatTitle">
+            <el-form-item label="分类">
               <app-cat-selector v-model="state.formData.appCatId" />
             </el-form-item>