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
提交
7484a09b
提交
7484a09b
编写于
9月 28, 2020
作者:
KK
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
组件逻辑调整&格式化
上级
dc9eb9fb
变更
2
显示空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
91 行增加
和
98 行删除
+91
-98
app-van-select.less
src/components/app-van-select/app-van-select.less
+32
-0
app-van-select.vue
src/components/app-van-select/app-van-select.vue
+59
-98
未找到文件。
src/components/app-van-select/app-van-select.less
0 → 100644
浏览文件 @
7484a09b
.van-dropdown-menu__bar {
box-shadow: none;
}
.van-ellipsis {
padding-right: 15px;
}
.van-dropdown-menu__title::after {
right: 6px;
}
.dropdown-box {
display: flex;
flex-wrap: wrap;
padding: 15px 0;
.dropdown-item {
width: 50%;
display: flex;
padding: 8px 12px;
.dropdown-item-icon {
padding: 0 5px;
position: absolute;
}
.dropdown-item-text {
margin-left: 35px;
}
}
}
.dropdown-btn {
width: 50%;
}
.van-dropdown-item__content {
border-radius: 0 0 15px 15px;
}
src/components/app-van-select/app-van-select.vue
浏览文件 @
7484a09b
<
template
>
<van-dropdown-menu
:class=
"showTitle === title?'':'dropdown-menu-ative'"
class=
"ibiz-dropdown-menu"
>
<van-dropdown-item
:title=
"showTitle"
ref=
"item"
>
<van-dropdown-item
get-container=
"#app"
:lazy-render=
"false"
: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>
...
...
@@ -14,14 +14,7 @@
</
template
>
<
script
lang=
"ts"
>
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
"vue-property-decorator"
;
import
{
Vue
,
Component
,
Prop
,
Provide
,
Emit
,
Watch
}
from
"vue-property-decorator"
;
@
Component
({
components
:
{},
...
...
@@ -44,7 +37,7 @@ export default class AppVanSelect extends Vue {
* 数据集
*
* @type {any}
* @memberof AppVanMenu
* @memberof AppVanSelect
*/
@
Prop
()
public
items
?:
any
;
...
...
@@ -52,7 +45,7 @@ export default class AppVanSelect extends Vue {
* 搜索名
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
@
Prop
()
public
name
!
:
string
;
...
...
@@ -60,7 +53,7 @@ export default class AppVanSelect extends Vue {
* 名称
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
@
Prop
()
public
title
?:
any
;
...
...
@@ -68,114 +61,82 @@ export default class AppVanSelect extends Vue {
* 展示信息
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
public
showTitle
:
any
=
""
;
public
showTitle
:
any
=
""
;
/**
* 当前选中数据
*
* @type {any}
* @memberof AppVanSelect
*/
public
selectItem
:
any
=
{};
/**
* 重置按钮
*
* @type {string}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
public
onReset
(){
public
onReset
()
{
this
.
selectItem
=
{};
this
.
showTitle
=
this
.
title
;
this
.
closeDropdown
();
this
.
$emit
(
'onConfirm'
,
{[
this
.
name
]:
this
.
selectItem
.
value
})
this
.
$emit
(
'onConfirm'
,
{
[
this
.
name
]:
this
.
selectItem
.
value
})
}
/**
* 当前选中数据
*
* @type {any}
* @memberof AppVanMenu
*/
public
selectItem
:
any
=
{};
/**
* 数据点击事件
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
public
itemClick
(
item
:
any
)
{
public
itemClick
(
item
:
any
)
{
this
.
selectItem
=
item
;
}
/**
* 生命周期
*
* @memberof AppVanMenu
*/
created
(){
this
.
showTitle
=
this
.
title
;
}
/**
* 收起数据
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
public
closeDropdown
()
{
let
dropdown
:
any
=
this
.
$refs
.
item
;
if
(
dropdown
.
toggle
&&
dropdown
.
toggle
instanceof
Function
)
{
let
dropdown
:
any
=
this
.
$refs
.
item
;
if
(
dropdown
.
toggle
&&
dropdown
.
toggle
instanceof
Function
)
{
dropdown
.
toggle
();
}
}
/**
* 提交事件
*
* @type {any}
* @memberof AppVan
Menu
* @memberof AppVan
Select
*/
public
onConfirm
()
{
if
(
this
.
selectItem
.
label
)
{
if
(
this
.
selectItem
.
label
)
{
this
.
showTitle
=
this
.
selectItem
.
label
;
}
this
.
closeDropdown
();
this
.
$emit
(
'onConfirm'
,{[
this
.
name
]:
this
.
selectItem
.
value
})
this
.
$emit
(
'onConfirm'
,
{
[
this
.
name
]:
this
.
selectItem
.
value
})
}
/**
* 生命周期
*
* @memberof AppVanSelect
*/
created
()
{
this
.
showTitle
=
this
.
title
;
}
}
</
script
>
<
style
lang=
"less"
>
.ibiz-dropdown-menu {
min-width: 100px;
max-width: 100px;
height: 30px;
.van-ellipsis {
padding-right: 15px;
}
.van-dropdown-menu__title::after {
right: 6px;
}
.dropdown-box {
display: flex;
flex-wrap: wrap;
padding: 15px 0;
.dropdown-item {
width: 50%;
display: flex;
padding: 8px 12px;
.dropdown-item-icon {
padding: 0 5px;
position: absolute;
}
.dropdown-item-text {
margin-left: 35px;
}
}
}
.dropdown-btn {
width: 50%;
}
.van-dropdown-item__content {
border-radius: 0 0 15px 15px;
}
.dropdown-menu-ative {
}
}
@import "./app-van-select.less";
</
style
>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录