Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
uuai
test_git
提交
0f67223d
T
test_git
项目概览
uuai
/
test_git
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
test_git
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
0f67223d
编写于
4月 13, 2022
作者:
W
wuyb@phxg.cn
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
modal
上级
6c6d93f0
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
168 addition
and
58 deletion
+168
-58
vite-demo/src/components/modal/index.vue
vite-demo/src/components/modal/index.vue
+58
-0
vite-demo/src/hook/useModal.js
vite-demo/src/hook/useModal.js
+12
-1
vite-demo/src/views/antd/index.vue
vite-demo/src/views/antd/index.vue
+9
-14
vite-demo/src/views/antd/modal/index.vue
vite-demo/src/views/antd/modal/index.vue
+3
-3
vite-demo/src/views/antd/table/components/fromModal.vue
vite-demo/src/views/antd/table/components/fromModal.vue
+23
-0
vite-demo/src/views/antd/table/index.vue
vite-demo/src/views/antd/table/index.vue
+62
-40
vite-demo/vite.config.js
vite-demo/vite.config.js
+1
-0
未找到文件。
vite-demo/src/components/modal/index.vue
0 → 100644
浏览文件 @
0f67223d
<
template
>
<a-modal
:width=
"800"
:title=
"title"
:visible=
"isShow"
:maskClosable=
"false"
:confirmLoading=
"confirmLoading"
@
ok=
"handleOk"
@
cancel=
"handleCancel"
>
<slot></slot>
</a-modal>
</
template
>
<
script
>
import
{
ref
}
from
'
vue
'
export
default
{
name
:
"
modalIndex
"
,
props
:
{
title
:
{
type
:
String
,
default
:
'
模态框
'
},
isShow
:
{
type
:
Boolean
,
default
:
false
},
},
setup
(
props
,
content
)
{
let
confirmLoading
=
ref
(
false
)
const
handleOk
=
(
e
)
=>
{
confirmLoading
.
value
=
true
content
.
emit
(
'
modalOk
'
);
handleCancel
()
setTimeout
(()
=>
{
confirmLoading
.
value
=
false
},
300
)
}
const
handleCancel
=
()
=>
{
content
.
emit
(
'
modalCancel
'
);
content
.
emit
(
'
update:isShow
'
,
false
);
}
return
{
handleOk
,
handleCancel
,
confirmLoading
}
}
}
</
script
>
<
style
scoped
>
</
style
>
\ No newline at end of file
vite-demo/src/hook/useModal.js
浏览文件 @
0f67223d
...
...
@@ -2,15 +2,26 @@ import {ref, reactive, computed} from 'vue'
// 设置模态框
export
function
useModal
()
{
const
isShow
=
ref
(
false
)
const
isModalLoading
=
ref
(
false
)
const
onModalShow
=
()
=>
{
isShow
.
value
=
true
}
const
modalOk
=
()
=>
{
console
.
log
(
'
确认
'
)
}
const
modalCancel
=
()
=>
{
console
.
log
(
'
取消
'
)
}
return
{
modalOk
,
modalCancel
modalCancel
,
onModalShow
,
isShow
}
};
...
...
vite-demo/src/views/antd/index.vue
浏览文件 @
0f67223d
<
template
>
<div>
antd封装
</div>
<modal
v-model:
show=
"s
how"
title=
"新增"
@
modalOk=
"modalOk"
>
<modal
v-model:
isShow=
"isS
how"
title=
"新增"
@
modalOk=
"modalOk"
>
<div>
1232
</div>
</modal>
<a-button
@
click=
"
show = true
"
>
modal
</a-button>
<a-button
@
click=
"
onModalShow
"
>
modal
</a-button>
</
template
>
<
script
>
...
...
@@ -17,18 +17,13 @@
modal
},
setup
()
{
const
{
modalOk
,
modalCancel
}
=
useModal
()
const
show
=
ref
(
false
)
const
onShow
=
()
=>
{
show
.
value
=
true
}
const
defaultObj
=
{
show
,
onShow
}
return
Object
.
assign
(
defaultObj
,
{
modalOk
,
modalCancel
})
const
resModal
=
useModal
()
// const resModal = {
// onModalShow, isShow, modalOk, modalCancel
// }
const
defaultObj
=
{}
return
Object
.
assign
(
defaultObj
,
resModal
)
}
}
</
script
>
...
...
vite-demo/src/views/antd/modal/index.vue
浏览文件 @
0f67223d
...
...
@@ -2,7 +2,7 @@
<a-modal
:width=
"800"
:title=
"title"
:visible=
"
s
how"
:visible=
"
isS
how"
:maskClosable=
"false"
:confirmLoading=
"confirmLoading"
@
ok=
"handleOk"
...
...
@@ -23,7 +23,7 @@
type
:
String
,
default
:
'
模态框
'
},
s
how
:
{
isS
how
:
{
type
:
Boolean
,
default
:
false
},
...
...
@@ -41,7 +41,7 @@
const
handleCancel
=
()
=>
{
content
.
emit
(
'
modalCancel
'
);
content
.
emit
(
'
update:
s
how
'
,
false
);
content
.
emit
(
'
update:
isS
how
'
,
false
);
}
return
{
...
...
vite-demo/src/views/antd/table/components/fromModal.vue
0 → 100644
浏览文件 @
0f67223d
<
template
>
<modal
>
<div>
1232
</div>
</modal>
</
template
>
<
script
>
import
modal
from
'
@c/modal/index.vue
'
export
default
{
name
:
"
fromModal
"
,
components
:
{
modal
},
setup
()
{
}
}
</
script
>
<
style
scoped
>
</
style
>
\ No newline at end of file
vite-demo/src/views/antd/table/index.vue
浏览文件 @
0f67223d
<
template
>
<a-
button>
新增
</a-button
>
<a-table
:columns=
"columns"
:data-source=
"data"
>
<
template
#name
="
{ text }">
{{
text
}}
</
template
>
<!-- <span #customTitle="{}" slot="customTitle"><a-icon type="smile-o"/> Name</span>--
>
<
template
#customTitle
>
<span
>
<smile-outlined/
>
Name
</span>
</
template
>
<
template
#tags=
"{ text: tags }"
>
<
div>
123
</div
>
<div>
<a-tag
v-for=
"tag in tags"
:key=
"tag"
:color=
"tag === 'loser' ? 'volcano' : tag.length > 5 ? 'geekblue' : 'green'"
>
{{
tag
.
toUpperCase
()
}}
</a-tag>
<
a-tag
color=
"pink"
>
pink
</a-tag
>
</
div
>
</
template
>
<
template
#action=
{record}
>
11111111
<!--
<a>
Invite 一
{{
record
.
name
}}
</a>
--
>
<!--
<a-divider
type=
"vertical"
/>
--
>
<!--
<a>
Delete
</a>
--
>
<!--
<a-divider
type=
"vertical"
/>
--
>
<!--
<a
class=
"ant-dropdown-link"
>
More actions--
>
<
!--
<a-icon
type=
"down"
/>
--
>
<!--
</a>
--
>
</
templat
e
>
<
/a-table
>
<a-
space
direction=
"vertical"
style=
"width: 100%"
>
<a-button
@
click=
"onModalShow"
>
新增
</a-button
>
<
a-table
:columns=
"columns"
:data-source=
"data"
>
<template
#name
="
{ text }">
{{
text
}}
</
template
>
<!--设置表头信息--
>
<
template
#customTitle
>
<span
>
<smile-outlined/>
Name
</span
>
</
template
>
<
template
#tags=
"{ text: tags }"
>
<div>
<a-tag
v-for=
"tag in tags"
:key=
"tag"
:color=
"tag === 'loser' ? 'volcano' : tag.length > 5 ? 'geekblue' : 'green'"
>
{{
tag
.
toUpperCase
()
}}
</a-tag>
<
/div
>
</
template
>
<
template
#action=
"{ record }"
>
<div
>
<a>
修改
</a>
<a-divider
type=
"vertical"
/
>
<a>
删除
</a
>
<a-divider
type=
"vertical"
/
>
<a>
查看
</a
>
</div
>
<
/
template
>
</a-table
>
</a-spac
e>
<
fromModal
v-model:isShow=
"isShow"
:title=
"13"
></fromModal
>
</template>
<
script
>
...
...
@@ -40,8 +40,10 @@
{
dataIndex
:
'
name
'
,
key
:
'
name
'
,
slots
:
{
title
:
'
customTitle
'
},
scopedSlots
:
{
customRender
:
'
name
'
},
slots
:
{
title
:
'
customTitle
'
,
customRender
:
'
name
'
},
},
{
title
:
'
Age
'
,
...
...
@@ -57,12 +59,12 @@
title
:
'
Tags
'
,
key
:
'
tags
'
,
dataIndex
:
'
tags
'
,
s
copedS
lots
:
{
customRender
:
'
tags
'
},
slots
:
{
customRender
:
'
tags
'
},
},
{
title
:
'
Action
'
,
key
:
'
action
'
,
s
copedS
lots
:
{
customRender
:
'
action
'
},
slots
:
{
customRender
:
'
action
'
},
},
];
const
data
=
[
...
...
@@ -88,14 +90,34 @@
tags
:
[
'
cool
'
,
'
teacher
'
],
},
];
import
{
SmileOutlined
,
DownOutlined
}
from
'
@ant-design/icons-vue
'
;
import
{
useModal
}
from
"
@/hook/useModal
"
;
import
fromModal
from
'
./components/fromModal.vue
'
export
default
{
name
:
"
i
ndex
"
,
name
:
"
tableI
ndex
"
,
setup
()
{
const
{
modalOk
,
modalCancel
,
onModalShow
,
isShow
}
=
useModal
()
return
{
data
,
columns
,
modalOk
,
modalCancel
,
onModalShow
,
isShow
};
}
},
components
:
{
SmileOutlined
,
DownOutlined
,
fromModal
},
}
</
script
>
...
...
vite-demo/vite.config.js
浏览文件 @
0f67223d
...
...
@@ -14,6 +14,7 @@ export default defineConfig({
resolve
:
{
alias
:
{
'
@
'
:
resolve
(
__dirname
,
'
src
'
),
// 配置组件
'
@c
'
:
resolve
(
__dirname
,
'
src/components
'
),
// 配置组件
'
@img
'
:
'
./src/assets
'
// 配置图片
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录