Your Name
2022-06-29 7eb356d046aff95042b1443dbef99692f19ae940
'菜单删除刷新'
已修改2个文件
43 ■■■■■ 文件已修改
src/api/menu/index.ts 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/menu/index.vue 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/menu/index.ts
@@ -28,12 +28,12 @@
                data:value
            });
        },
        // getMenuTest: (params?: string) => {
        //     return request({
        //         url: '/gitee/lyt-top/vue-next-admin-images/raw/master/menu/testMenu.json',
        //         method: 'get',
        //         params,
        //     });
        // },
        deleteMenu: (value?: object) => {
            return request({
                url: `/menu/del`,
                method: 'post',
                data:value,
            });
        },
    };
}
src/views/system/menu/index.vue
@@ -56,7 +56,7 @@
                    <template #default="scope">
                        <el-button size="small" text type="primary" @click="onOpenMenuDialog('新增')">新增</el-button>
                        <el-button size="small" text type="primary" @click="onOpenMenuDialog('修改',scope.row)">修改</el-button>
                        <!--                        <el-button size="small" text type="primary" @click="onTabelRowDel(scope.row)">删除</el-button>-->
                        <el-button size="small" text type="primary" @click="deleteMenu(scope.row)">删除</el-button>
                    </template>
                </el-table-column>
            </el-table>
@@ -77,12 +77,14 @@
    import pinia from "/@/stores";
    import {dynamicRoutes} from "/@/router/route";
    import {useUserInfo} from "/@/stores/userInfo";
    import {initBackEndControlRoutes} from "/@/router/backEnd";
    export default defineComponent({
        name: 'systemMenu',
        components: { menuDialog },
        setup() {
            const menuDialog = ref();
            const storesRoutesList = useRoutesList();
            const state = reactive({
                projectId:'1',
                menuData:[],
@@ -109,21 +111,34 @@
            };
            // 打开编辑菜单弹窗
            // 删除当前行
            const onTabelRowDel = (row: RouteRecordRaw) => {
            const deleteMenu =  (row: any) => {
                ElMessageBox.confirm(`此操作将永久删除路由:${row.path}, 是否继续?`, '提示', {
                    confirmButtonText: '删除',
                    cancelButtonText: '取消',
                    type: 'warning',
                }).then(() => {
                    ElMessage.success('删除成功');
                }).then(async () => {
                    let res = await useMenuApi().deleteMenu({id:row.id})
                    if(res.data.code ==='200'){
                        ElMessage({
                            type:'success',
                            duration:2000,
                            message:'删除成功'
                        })
                        await getMenuList()
                        if(Session.get('projectId') == state.projectId) await initBackEndControlRoutes()
                    }else{
                        ElMessage({
                            type:'warning',
                            message:res.data.msg
                        })
                    }
                }).catch(() => {});
            };
            const getMenuList = async () => {
                let res = await useMenuApi().getMenuAdmin(state.projectId)
                if(res.data.code === '200'){
                    state.menuTableData = res.data.data
                    // const storesRoutesList = useRoutesList(pinia);
                    // storesRoutesList.setRoutesList(res.data.data);
                    if(Session.get('projectId') == state.projectId) await initBackEndControlRoutes()
                }else{
                    ElMessage({
                        type:'warning',
@@ -138,7 +153,7 @@
                getMenuList,
                menuDialog,
                onOpenMenuDialog,
                onTabelRowDel,
                deleteMenu,
                ...toRefs(state),
            };
        },