Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-Mob-R7-Res
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-Mob-R7-Res
提交
e74fff01
提交
e74fff01
编写于
5月 12, 2020
作者:
KK
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
快速分组组件
上级
de4fe6ba
变更
2
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
168 行增加
和
0 行删除
+168
-0
app-register.ts
src/app-register.ts
+2
-0
app-van-select.vue
src/components/app-van-select/app-van-select.vue
+166
-0
未找到文件。
src/app-register.ts
浏览文件 @
e74fff01
...
...
@@ -86,6 +86,8 @@ export const AppComponents = {
v
.
component
(
'app-mob-menu-list-view'
,
()
=>
import
(
'@/components/app-mob-menu-list-view/app-mob-menu-list-view.vue'
));
// 图片滑动视图
v
.
component
(
'app-mob-menu-swiper-view'
,
()
=>
import
(
'@/components/app-mob-menu-swiper-view/app-mob-menu-swiper-view.vue'
));
//快速分组组件
v
.
component
(
'app-van-select'
,
()
=>
import
(
'@/components/app-van-select/app-van-select.vue'
));
// 默认样式视图
v
.
component
(
'app-mob-menu-default-view'
,
()
=>
import
(
'@/components/app-mob-menu-default-view/app-mob-menu-default-view.vue'
));
// 菜单样式 END
...
...
src/components/app-van-select/app-van-select.vue
0 → 100644
浏览文件 @
e74fff01
<
template
>
<van-dropdown-menu
active-color=
"#ee0a24"
:class=
"showTitle === title?'':'dropdown-menu-ative'"
class=
"dropdown-menu"
>
<van-dropdown-item
:title=
"showTitle"
ref=
"item"
>
<div
class=
"dropdown-box"
>
<div
v-for=
"(item,index) in items"
:key=
"index"
class=
"dropdown-item"
@
click=
"itemClick(item)"
>
<div
v-show=
"selectItem == item"
class=
"dropdown-item-icon"
><van-icon
name=
"success"
/></div>
<div
class=
"dropdown-item-text"
>
{{
item
.
label
}}
</div>
</div>
</div>
<van-button
class=
"dropdown-btn"
@
click=
"onReset"
>
重置
</van-button>
<van-button
class=
"dropdown-btn"
type=
"info"
@
click=
"onConfirm"
>
确定
</van-button>
</van-dropdown-item>
</van-dropdown-menu>
</
template
>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
"vue-property-decorator"
;
@
Component
({
components
:
{}
})
export
default
class
AppVanSelect
extends
Vue
{
/**
* 数据集
*
* @type {any}
* @memberof AppVanMenu
*/
@
Prop
()
public
items
?:
any
;
/**
* 名称
*
* @type {any}
* @memberof AppVanMenu
*/
@
Prop
()
public
title
?:
any
;
/**
* 展示信息
*
* @type {any}
* @memberof AppVanMenu
*/
public
showTitle
:
any
=
""
;
/**
* 重置按钮
*
* @type {string}
* @memberof AppVanMenu
*/
public
onReset
(){
this
.
selectItem
=
{};
this
.
showTitle
=
this
.
title
;
this
.
closeDropdown
();
}
/**
* 当前选中数据
*
* @type {any}
* @memberof AppVanMenu
*/
public
selectItem
:
any
=
{};
/**
* 数据点击事件
*
* @type {any}
* @memberof AppVanMenu
*/
public
itemClick
(
item
:
any
){
this
.
selectItem
=
item
;
}
/**
* 生命周期
*
* @memberof AppVanMenu
*/
created
(){
this
.
showTitle
=
this
.
title
;
}
/**
* 收起数据
*
* @type {any}
* @memberof AppVanMenu
*/
public
closeDropdown
()
{
let
dropdown
:
any
=
this
.
$refs
.
item
;
if
(
dropdown
.
toggle
&&
dropdown
.
toggle
instanceof
Function
){
dropdown
.
toggle
();
}
}
/**
* 提交事件
*
* @type {any}
* @memberof AppVanMenu
*/
public
onConfirm
()
{
this
.
showTitle
=
this
.
selectItem
.
label
;
this
.
closeDropdown
();
}
}
</
script
>
<
style
lang=
"less"
>
.dropdown-box {
display: flex;
flex-wrap: wrap;
.dropdown-item {
width: 50%;
display: flex;
padding: 8px 12px;
.dropdown-item-icon {
color: #e2676d;
padding: 0 5px;
position: absolute;
}
.dropdown-item-text {
margin-left: 35px;
}
}
}
.dropdown-btn{
width: 50%;
}
.dropdown-menu{
width: 100px;
height: 30px;
border: solid #ccc 1px;
border-radius: 30px;
.van-ellipsis {
padding-right: 15px;
}
.van-dropdown-menu__title::after {
right: 6px;
}
}
.dropdown-menu-ative{
border-color: #ee0a24;
background: #ffe9ec;
.van-ellipsis{
color: #ee0a24;
}
.van-dropdown-menu__title::after {
color: #ee0a24;
}
}
</
style
>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录