fix: 菜单管理增加微信小程序图标,修复部分问题
This commit is contained in:
@@ -233,6 +233,49 @@
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="小程序路径" prop="miniPath">
|
||||
<el-input v-model="formData.miniPath" placeholder="pages/index/index" />
|
||||
</el-form-item>
|
||||
<el-form-item label="小程序组件" prop="miniComponent">
|
||||
<el-input v-model="formData.miniComponent" placeholder="小程序组件名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="小程序图标">
|
||||
<single-image-upload
|
||||
style="width: 100px; height: 100px"
|
||||
v-model="formData.miniIcon"
|
||||
></single-image-upload>
|
||||
</el-form-item>
|
||||
<el-form-item label="接口路径" prop="miniPage">
|
||||
<div class="w-full">
|
||||
<div>
|
||||
<el-button @click="apiInfoPush" icon="plus" type="primary">添加</el-button>
|
||||
</div>
|
||||
<div class="u-flex u-m-t-10" v-for="(item, index) in formData.apiInfo" :key="index">
|
||||
<el-form-item label="请求方式" label-position="left">
|
||||
<el-select v-model="item.method" style="width: 100px">
|
||||
<el-option
|
||||
v-for="(item, index) in apiMethodOptions"
|
||||
:key="index"
|
||||
:value="item.value"
|
||||
>
|
||||
{{ item.label }}
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="接口地址" style="flex: 1">
|
||||
<el-input v-model="item.url" placeholder="支持通配符*和?" />
|
||||
</el-form-item>
|
||||
<el-icon
|
||||
style="margin-left: 10px"
|
||||
size="20"
|
||||
color="#F56c6c"
|
||||
@click="formData.apiInfo.splice(index, 1)"
|
||||
>
|
||||
<RemoveFilled />
|
||||
</el-icon>
|
||||
</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="formData.type !== MenuTypeEnum.BUTTON" prop="hidden" label="显示状态">
|
||||
<el-radio-group v-model="formData.hidden">
|
||||
<el-radio :value="1">隐藏</el-radio>
|
||||
@@ -302,7 +345,19 @@ const dialog = reactive({
|
||||
title: "新增菜单",
|
||||
visible: false,
|
||||
});
|
||||
|
||||
const apiMethodOptions = ref([
|
||||
{ value: "All", label: "All" },
|
||||
{ value: "GET", label: "GET" },
|
||||
{ value: "POST", label: "POST" },
|
||||
{ value: "PUT", label: "PUT" },
|
||||
{ value: "DELETE", label: "DELETE" },
|
||||
]);
|
||||
function apiInfoPush() {
|
||||
if (!formData.value.apiInfo) {
|
||||
formData.value.apiInfo = [];
|
||||
}
|
||||
formData.value.apiInfo.push({ method: "All", url: "" });
|
||||
}
|
||||
// 查询参数
|
||||
const queryParams = reactive<getListRequest>({});
|
||||
// 菜单表格数据
|
||||
@@ -326,6 +381,10 @@ const initialeditRequestData = ref<editRequest>({
|
||||
path: "",
|
||||
component: "",
|
||||
name: "",
|
||||
miniPath: "",
|
||||
miniComponent: "",
|
||||
miniIcon: "",
|
||||
apiInfo: [],
|
||||
});
|
||||
// 菜单表单数据
|
||||
const formData = ref({ ...initialeditRequestData.value });
|
||||
@@ -414,6 +473,7 @@ function handleOpenDialog(pid?: string, menuId?: string) {
|
||||
path: data.path || "", // Ensure path is always a string
|
||||
title: data.title || "", // Ensure title is always a string
|
||||
type: data.type ?? 0, // Ensure type is always a number
|
||||
apiInfo: data.apiInfo ? JSON.parse(data.apiInfo) : [],
|
||||
};
|
||||
});
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user