Commit 7c2691a0 authored by “yiyousong”'s avatar “yiyousong”

feat:新增应用集市板块

parent db001bc4
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
"dependencies": { "dependencies": {
"@antv/data-set": "^0.11.4", "@antv/data-set": "^0.11.4",
"animate.css": "^4.1.0", "animate.css": "^4.1.0",
"ant-design-vue": "1.7.2", "ant-design-vue": "1.7.8",
"axios": "^0.19.2", "axios": "^0.19.2",
"china-division": "^2.5.0", "china-division": "^2.5.0",
"clipboard": "^2.0.6", "clipboard": "^2.0.6",
......
...@@ -35,21 +35,21 @@ ...@@ -35,21 +35,21 @@
.ant-table-fixed-header .ant-table-scroll .ant-table-header { .ant-table-fixed-header .ant-table-scroll .ant-table-header {
overflow: hidden !important; overflow: hidden !important;
margin-bottom: 0 !important; margin-bottom: 0 !important;
padding-right: 5px; padding-right: 6px;
} }
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 5px; width: 6px;
overflow-y: auto; overflow-y: auto;
} }
::-webkit-scrollbar-thumb { ::-webkit-scrollbar-thumb {
border-radius: 5px; border-radius: 6px;
background-color: rgba(144, 147, 153, .5); background-color: rgba(144, 147, 153, .5);
} }
::-webkit-scrollbar-track { ::-webkit-scrollbar-track {
border-radius: 5px; border-radius: 6px;
background: #fff; background: #fff;
} }
...@@ -66,4 +66,7 @@ ...@@ -66,4 +66,7 @@
left: -16px; left: -16px;
background-color: rgba(5, 149, 253, 1); background-color: rgba(5, 149, 253, 1);
} }
}
.ant-input{
resize: none;
} }
\ No newline at end of file
<template>
<!-- 应用集市 -->
<div class="app-details">
<a-tabs default-active-key="1">
<a-button slot="tabBarExtraContent" @click="handleBack"
>返回上一级</a-button
>
<a-tab-pane key="1" tab="详情">
<AppDetailsPage></AppDetailsPage>
</a-tab-pane>
<a-tab-pane key="2" tab="数据更新" force-render>
<DataUpdata></DataUpdata>
</a-tab-pane>
</a-tabs>
</div>
</template>
<script>
import AppDetailsPage from "./components/AppDetailsPage.vue";
import DataUpdata from "./components/DataUpdata.vue";
export default {
components: {
AppDetailsPage,
DataUpdata,
},
data() {
return {};
},
methods: {
handleBack() {
this.$router.back();
},
},
};
</script>
<style lang="less" scoped>
.app-details {
width: 100%;
padding: 15px;
height: 89vh;
position: absolute;
}
/deep/.ant-tabs {
height: 100%;
background-color: #fff;
}
/deep/.ant-tabs-bar,
/deep/.ant-tabs-nav-container {
border-bottom: 1px solid rgb(224, 224, 224) !important;
}
/deep/.ant-tabs-tabpane {
padding: 0px 20px;
}
</style>
\ No newline at end of file
<template>
<!-- 应用集市 -->
<div class="app-market">
<a-tabs default-active-key="1">
<a-tab-pane key="1" tab="终端应用">
<TerminalApp></TerminalApp>
</a-tab-pane>
<a-tab-pane key="2" tab="移动端应用" force-render>
<MoveApp></MoveApp>
</a-tab-pane>
</a-tabs>
</div>
</template>
<script>
import TerminalApp from "./components/TerminalApp.vue";
import MoveApp from "./components/MoveApp.vue";
export default {
components: {
TerminalApp,
MoveApp,
},
};
</script>
<style lang="less" scoped>
.app-market {
width: 100%;
padding: 15px;
height: 89vh;
}
/deep/.ant-tabs {
height: 100%;
background-color: #fff;
}
/deep/.ant-tabs-nav-container {
border-bottom: 1px solid rgb(224, 224, 224) !important;
}
/deep/.ant-tabs-tabpane {
padding: 0px 20px;
}
</style>
\ No newline at end of file
<template>
<div class="index">
<router-view></router-view>
</div>
</template>
<script>
export default {};
</script>
<style lang="less" scoped>
.index {
width: 100%;
}
</style>
\ No newline at end of file
<template>
<div class="app-details-page">
<!-- 顶部 -->
<div class="app-info-box flex aic jcb">
<div class="left flex flexc aic jcc">
<img
class="logo"
width="50"
height="50"
src="../../../../assets/img/logo.png"
/>
<div class="name">法律法规</div>
<div class="version">当前版本:v1.0</div>
</div>
<div class="right flex1">
<a-form-model
:model="form"
:label-col="{ span: 2 }"
:wrapper-col="{ span: 22 }"
>
<a-form-model-item label="应用主题"> 公共服务 </a-form-model-item>
<a-form-model-item label="应用简介">
汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识
汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识
汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识
汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识
</a-form-model-item>
<a-form-model-item label="适用范围">
共计26个站点 <a class="primary ml10">查看详情</a>
</a-form-model-item>
<a-form-model-item label="应用类型"> 应用程序 </a-form-model-item>
</a-form-model>
</div>
</div>
<!-- 版本管理 -->
<div class="version-manage flex1">
<div class="title">版本管理</div>
<div class="table-content">
<a-table
:loading="loading"
size="small"
bordered
:scroll="{ y: 350 }"
:columns="columns"
:pagination="{
showTotal: (total) => `共 ${total} 条`,
current: current,
total: total,
showSizeChanger: true,
showQuickJumper: true,
size: 'small',
pageSizeOptions: pageSizeOptions,
onChange: handleChange,
onShowSizeChange: showSizeChange,
}"
:data-source="tableData"
:rowKey="(record) => record.id"
>
<!-- 序号 -->
<span slot="num" slot-scope="text, record, index">{{
(current - 1) * size + index + 1
}}</span>
<!-- 应用包 -->
<template slot="app" slot-scope="text">
<a class="primary">{{ text.app }}</a>
</template>
<!-- 当前是否使用 -->
<template slot="danqian" slot-scope="text">
<a-tag v-if="text.danqian" color="blue"> 正在使用 </a-tag>
<span v-else></span>
</template>
<!-- 操作 -->
<template slot="action" slot-scope="text">
<a-space size="middle">
<a class="primary" @click="handleUse(text.id)">使用</a>
<a class="primary" @click="handlePreview(text)">预览</a>
</a-space>
</template>
</a-table>
</div>
</div>
</div>
</template>
<script>
const columns = [
{
title: "序号",
dataIndex: "num",
width: "65px",
scopedSlots: {
customRender: "num",
},
},
{
title: "版本号",
dataIndex: "banben",
},
{
title: "更新说明",
width: "40%",
dataIndex: "shuom",
},
{
title: "应用包",
scopedSlots: { customRender: "app" },
},
{
title: "当前是否使用",
scopedSlots: { customRender: "danqian" },
},
{
title: "操作",
width: "10%",
scopedSlots: { customRender: "action" },
},
];
export default {
data() {
return {
columns,
current: 1,
size: 10,
total: 10,
loading: false,
pageSizeOptions: ["10", "30", "50", "100"],
form: {},
tableData: [
{
id: 1,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 2,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 0,
},
{
id: 3,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 0,
},
{
id: 4,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 5,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 6,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 7,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 8,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 9,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
{
id: 10,
banben: "v1.0",
shuom: "修复了页面",
app: "app.zip",
danqian: 1,
},
],
};
},
methods: {
// 使用
handleUse(id) {
console.log(id);
},
// 预览
handlePreview(row) {
console.log(row);
},
// 翻页
handleChange(cur) {
this.current = cur;
},
// 改变每页显示数量
showSizeChange(cur, size) {
this.current = cur;
this.size = size;
},
},
};
</script>
<style lang="less" scoped>
@bgc: #fafafb;
.app-info-box {
height: 230px;
margin-bottom: 20px;
.left {
width: 30%;
height: inherit;
margin-right: 15px;
background-color: @bgc;
border-radius: 4px;
.logo {
margin-bottom: 20px;
}
.name {
font-size: 20px;
font-weight: 600;
margin-bottom: 20px;
}
}
.right {
height: inherit;
padding: 15px;
background-color: @bgc;
border-radius: 4px;
overflow-y: auto;
&::-webkit-scrollbar {
width: 6px;
overflow-y: auto;
}
&::-webkit-scrollbar-thumb {
border-radius: 6px;
background-color: rgba(144, 147, 153, 0.5);
}
&::-webkit-scrollbar-track {
border-radius: 6px;
background: @bgc;
}
}
}
.version-manage {
padding: 15px;
background-color: @bgc;
border-radius: 4px;
.title {
margin-bottom: 15px;
font-weight: 600;
}
}
</style>
\ No newline at end of file
<template>
<div>123456789</div>
</template>
<script>
export default {};
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template>
<div>123456789</div>
</template>
<script>
export default {};
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template>
<div class="terminal">
<div class="header flex aic jcb mb20">
<a-space>
<a-button type="primary" @click="handleAdd"> 新增应用 </a-button>
<a-button type="primary"> 克隆 </a-button>
</a-space>
<a-input-search
style="width: 300px"
placeholder="请输入应用名称搜索"
enter-button="搜索"
v-model="searchVal"
allowClear
@search="onSearch"
/>
</div>
<!-- 表格 -->
<div class="table-content">
<a-table
:row-selection="{
selectedRowKeys: selectedRowKeys,
onChange: onSelectChange,
}"
:loading="loading"
bordered
:scroll="{ y: 550 }"
:columns="columns"
:pagination="{
showTotal: (total) => `共 ${total} 条`,
current: current,
total: total,
showSizeChanger: true,
showQuickJumper: true,
pageSizeOptions: pageSizeOptions,
onChange: handleChange,
onShowSizeChange: showSizeChange,
}"
:data-source="tableData"
:rowKey="(record) => record.id"
>
<!-- 序号 -->
<span slot="num" slot-scope="text, record, index">{{
(current - 1) * size + index + 1
}}</span>
<!-- 图标 -->
<template slot="icon" slot-scope="text">
<img height="20" width="20" :src="text.icon" />
</template>
<!-- 类型 -->
<template slot="leix" slot-scope="text">
{{ text.leix }}
</template>
<!-- 下发设备 -->
<template slot="xiaf" slot-scope="text">
{{ text.xiaf }}
</template>
<!-- 上下架 -->
<template slot="shangjia" slot-scope="text">
<YSwitch v-model="text.shangjia"></YSwitch>
</template>
<!-- 操作 -->
<template slot="action" slot-scope="text">
<a-space size="middle">
<a class="primary" @click="handleEdit(text)">编辑</a>
<a class="primary" @click="handleCheck(text.id)">查看</a>
<a class="delete" @click="handleDel(text.id)">删除</a>
</a-space>
</template>
</a-table>
</div>
<!-- 新增应用 -->
<AddApp :AddVisible.sync="AddVisible" :title="title"></AddApp>
</div>
</template>
<script>
import YSwitch from "../../../../components/yswitch/YSwitch.vue";
import AddApp from "../modal/AddApp.vue";
const columns = [
{
title: "序号",
dataIndex: "num",
width: "65px",
scopedSlots: {
customRender: "num",
},
},
{
title: "应用名称",
dataIndex: "name",
},
{
title: "应用图标",
scopedSlots: { customRender: "icon" },
},
{
title: "当前版本",
dataIndex: "banben",
},
{
title: "应用主题",
dataIndex: "zhuti",
},
{
title: "应用简介",
width: "20%",
dataIndex: "jianjie",
},
{
title: "应用类型",
scopedSlots: { customRender: "leix" },
},
{
title: "下发设备",
scopedSlots: { customRender: "xiaf" },
},
{
title: "上架/下架",
scopedSlots: { customRender: "shangjia" },
},
{
title: "操作",
width: "10%",
scopedSlots: { customRender: "action" },
},
];
export default {
components: {
YSwitch,
AddApp,
},
data() {
return {
columns,
tableData: [
{
id: 1,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 2,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 3,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 4,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 5,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 6,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 7,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 8,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 9,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
{
id: 10,
name: "法律法规",
icon: require("../../../../assets/img/logo.png"),
banben: "v1.0",
zhuti: "公共服务",
jianjie: "汇集婚姻法、劳动法、刑法等各种条例,让您能轻松获取法律知识",
leix: "应用程序",
xiaf: "自助服务",
shangjia: 1,
},
], // 表格数据
loading: false,
searchVal: "", // 搜索
current: 1,
size: 10,
total: 1000,
pageSizeOptions: ["10", "30", "50", "100"],
selectedRowKeys: [], // 表格勾选数据
AddVisible: false,
title: "新增应用",
};
},
methods: {
// 新增
handleAdd() {
this.title = "新增应用";
this.AddVisible = true;
},
// 搜索
onSearch() {
console.log(1);
},
// 翻页
handleChange(cur) {
this.current = cur;
},
// 改变每页显示数量
showSizeChange(current, size) {
this.current = current;
this.size = size;
},
// 勾选表格
onSelectChange(keys) {
this.selectedRowKeys = keys;
},
// 编辑
handleEdit(row) {
console.log(row);
},
// 查看
handleCheck(id) {
this.$router.push({
path: "/basicset/appmarket/appdetails",
query: {
id,
},
});
},
// 删除
handleDel(id) {
let _this = this;
_this.$confirm({
title: "系统提示",
content: "删除不可恢复,确定要删除吗?",
okText: "确定",
okType: "danger",
cancelText: "取消",
centered: true,
icon: "exclamation-circle",
maskClosable: true,
async onOk() {
console.log(id);
},
onCancel() {
console.log("Cancel");
},
});
},
},
};
</script>
<style lang="less" scoped>
</style>
\ No newline at end of file
<template>
<div class="add-app">
<a-drawer
width="650"
:maskClosable="false"
:title="title"
:visible="Visible"
@close="onClose"
>
<div class="main">
<a-form-model
:model="form"
:label-col="labelCol"
:wrapper-col="wrapperCol"
>
<a-form-model-item label="应用名称" prop="">
<a-input v-model="form.name" placeholder="请输入应用名称" />
</a-form-model-item>
<a-form-model-item label="应用主题" prop="">
<a-select v-model="form.region" placeholder="请选择应用主题">
<a-select-option value="shanghai"> Zone one </a-select-option>
<a-select-option value="beijing"> Zone two </a-select-option>
</a-select>
</a-form-model-item>
<a-form-model-item label="应用主题" prop="">
<a-upload
name="file"
list-type="picture-card"
class="avatar-uploader"
:show-upload-list="false"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
:before-upload="iconBeforeUpload"
@change="handleChangeIcon"
>
<img v-if="imageUrl" :src="imageUrl" alt="avatar" />
<div v-else>
<a-icon :type="loading ? 'loading' : 'plus'" />
<div class="ant-upload-text">选择图标</div>
</div>
</a-upload>
</a-form-model-item>
<a-form-model-item label="应用简介" prop="">
<a-textarea
placeholder="请输入应用简介"
v-model="form.name"
allow-clear
:autoSize="{
minRows: 4,
maxRows: 4,
}"
/>
</a-form-model-item>
<a-form-model-item label="适用范围" prop="">
<a-button type="primary">
<span>选择</span>
<!-- <span>已选择(32)</span> -->
</a-button>
</a-form-model-item>
<a-form-model-item label="应用类型" prop="">
<a-radio-group v-model="form.resource">
<a-radio value="1"> 应用程序 </a-radio>
<a-radio value="2"> URL </a-radio>
</a-radio-group>
</a-form-model-item>
<a-form-model-item class="upload-app" label="上传应用" prop="">
<a-upload
name="file"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
:multiple="false"
:file-list="fileList"
@change="handleChangeFile"
>
<a-button> <a-icon type="upload" /> 选择文件 </a-button>
</a-upload>
</a-form-model-item>
<a-form-model-item label="更新说明" prop="">
<a-textarea
placeholder="请输入应用简介"
v-model="form.name"
allow-clear
:autoSize="{
minRows: 4,
maxRows: 4,
}"
/>
</a-form-model-item>
<a-form-model-item label="更新数据" prop="">
<YSwitch v-model="form.name"></YSwitch>
</a-form-model-item>
</a-form-model>
</div>
<!-- 底部按钮 -->
<div
:style="{
width: '100%',
height: '54px',
borderTop: '1px solid #e8e8e8',
padding: '10px 16px',
textAlign: 'left',
background: '#fff',
borderRadius: '0 0 4px 4px',
}"
>
<a-space size="middle">
<a-button @click="onClose"> 取消 </a-button>
<a-button type="primary" @click="onSubmit"> 保存 </a-button>
</a-space>
</div>
</a-drawer>
</div>
</template>
<script>
import YSwitch from "../../../../components/yswitch/YSwitch.vue";
export default {
components: {
YSwitch,
},
props: {
title: {
type: String,
required: true,
default: "",
},
AddVisible: {
type: Boolean,
required: true,
default: false,
},
},
data() {
return {
labelCol: {
span: 3,
},
wrapperCol: {
span: 21,
},
loading: false,
imageUrl: "",
form: {},
fileList: [],
};
},
computed: {
Visible: {
get() {
return this.AddVisible;
},
set(val) {
this.$emit("update:AddVisible", val);
},
},
},
methods: {
// 关闭
onClose() {
this.Visible = false;
},
// 提交
onSubmit() {
console.log(1);
},
// 图标删除之前
iconBeforeUpload(file) {
const isJpgOrPng =
file.type === "image/jpeg" || file.type === "image/png";
if (!isJpgOrPng) {
this.$message.error("请上传jpeg或者png格式图片!");
}
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isLt2M) {
this.$message.error("图片大小不能超过 2MB!");
}
return isJpgOrPng && isLt2M;
},
// 上传图标
handleChangeIcon(info) {
if (info.file.status === "uploading") {
this.loading = true;
return;
}
if (info.file.status === "done") {
this.loading = false;
}
},
// 上传应用
handleChangeFile(info) {
let fileList = [...info.fileList];
fileList = fileList.slice(-1);
fileList = fileList.map((file) => {
if (file.response) {
file.url = file.response.url;
}
return file;
});
this.fileList = fileList;
},
},
};
</script>
<style lang="less" scoped>
/deep/.ant-form-item {
display: flex;
align-items: center;
}
.upload-app {
align-items: flex-start !important;
}
/deep/.ant-drawer-wrapper-body {
display: flex;
flex-direction: column;
}
/deep/.ant-drawer-body {
padding: 0px !important;
flex: 1;
display: flex;
flex-direction: column;
}
.main {
height: 1px;
padding: 24px;
flex: 1;
overflow-y: auto;
}
</style>
\ No newline at end of file
...@@ -30,7 +30,7 @@ const options = { ...@@ -30,7 +30,7 @@ const options = {
path: "basicset", path: "basicset",
name: "基础设置", name: "基础设置",
meta: { meta: {
icon: "dashboard", icon: "setting",
}, },
component: BlankView, component: BlankView,
children: [ children: [
...@@ -106,6 +106,26 @@ const options = { ...@@ -106,6 +106,26 @@ const options = {
name: "节假日配置", name: "节假日配置",
component: () => import("@/pages/basicset/holiday/festival"), component: () => import("@/pages/basicset/holiday/festival"),
}, },
{
path: "appmarket",
component: () => import("@/pages/basicset/appmarket/Index"),
children: [
{
path: "",
name: "应用集市",
component: () =>
import("@/pages/basicset/appmarket/AppMarket"),
meta: { invisible: true },
},
{
path: "appdetails",
name: "应用详情",
component: () =>
import("@/pages/basicset/appmarket/AppDetails"),
meta: { invisible: true },
},
],
},
// { // {
// path: 'qrcode', // path: 'qrcode',
// name: '二维码设置', // name: '二维码设置',
......
...@@ -2209,10 +2209,10 @@ ansi-styles@^4.1.0: ...@@ -2209,10 +2209,10 @@ ansi-styles@^4.1.0:
"@types/color-name" "^1.1.1" "@types/color-name" "^1.1.1"
color-convert "^2.0.1" color-convert "^2.0.1"
ant-design-vue@1.7.2: ant-design-vue@1.7.8:
version "1.7.2" version "1.7.8"
resolved "https://registry.npm.taobao.org/ant-design-vue/download/ant-design-vue-1.7.2.tgz" resolved "https://registry.npmmirror.com/ant-design-vue/-/ant-design-vue-1.7.8.tgz#1abbf86b68a4f5b1000bea0487b8031dc0001661"
integrity sha1-qsf/gCIFcRYxyGmOKgx7TmHf1z4= integrity sha512-F1hmiS9vwbyfuFvlamdW5l9bHKqRlj9wHaGDIE41NZMWXyWy8qL0UFa/+I0Wl8gQWZCqODW5pN6Yfoyn85At3A==
dependencies: dependencies:
"@ant-design/icons" "^2.1.1" "@ant-design/icons" "^2.1.1"
"@ant-design/icons-vue" "^2.0.0" "@ant-design/icons-vue" "^2.0.0"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment