Skip to content

Commit 7a38e3d

Browse files
dpp050700juzi214032
authored andcommitted
feat(popup): 修改animation和contentAlign属性名;添加l-panel-class
1 parent bcbf9f3 commit 7a38e3d

File tree

12 files changed

+180
-197
lines changed

12 files changed

+180
-197
lines changed

dist/popup/index.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/popup/index.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"component":true,"usingComponents":{}}
1+
{"component":true,"usingComponents":{"l-transition":"../transition/index"}}

dist/popup/index.wxml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11

2-
<view class='container-popup {{ show ? "popup-show" : "" }} {{ "l-popup-" + contentAlign }}' style="z-index:{{zIndex}};" catchtouchmove="doNothingMove">
3-
<view class="container-bg l-bg-class"></view>
4-
<view wx:if="{{show}}" class="popup-content {{ show ? contentAlign : ''}} popup-fade-{{contentAlign}}-active-{{animation ? status:''}}" catchtap="onPupopTap">
5-
<view catchtap="doNothingTap">
6-
<slot></slot>
2+
<view class='l-class container-popup {{ show ? "popup-show" : "" }} {{contentAlign ? contentAlign : direction}}' style="z-index:{{zIndex}};">
3+
<view class="container-bg l-bg-class" style="opacity: {{opacity}}" catchtap="onPupopTap" catchtouchmove="doNothingMove"></view>
4+
<l-transition wx:if="{{animation && transition}}" show="{{ show }}" class="popup-content" name="" duration="300" l-enter-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-class"}}' l-enter-active-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-active-class"}}' l-enter-to-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-to-class"}}' l-leave-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-class"}}' l-leave-active-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-active-class"}}' l-leave-to-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-to-class"}}'>
5+
<view class='{{"popup-content-"+ (contentAlign ? contentAlign : direction)}} l-panel-class'>
6+
<slot></slot>
7+
</view>
8+
</l-transition>
9+
<view wx:if="{{!(animation && transition) && show}}" class="popup-content" style="z-index:100">
10+
<view class='test {{"popup-content-"+ (contentAlign ? contentAlign : direction)}} l-panel-class'>
11+
<slot></slot>
12+
</view>
713
</view>
814
</view>
9-
</view>
15+

dist/popup/index.wxss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
.container-popup{visibility:hidden;position:fixed;top:0;left:0;right:0;bottom:0}.popup-show{visibility:visible}.popup-show .container-bg{display:block;opacity:1}.container-bg{opacity:0;position:fixed;top:0;left:0;right:0;bottom:0;z-index:6;background:rgba(0,0,0,.4);transition:all .3s ease-in-out}.popup-bg{height:100%;width:100%;position:absolute;z-index:90}.popup-content{position:absolute;z-index:100;width:100%;max-width:100%;height:100%}.center{display:flex;height:100%;width:100%;flex-direction:row;align-items:center;justify-content:center}.left{display:flex;flex-direction:row;height:100%}.right{display:flex;flex-direction:row;justify-content:flex-end;height:100%}.bottom{display:flex;flex-direction:column-reverse;width:100%}.popup-fade-center-active-show{animation:popup-center-fadein .4s}.popup-fade-center-active-hide{animation:popup-center-fadeout .4s}.popup-fade-top-active-show{animation:popup-top-fadein .3s ease-in-out}.popup-fade-top-active-hide{animation:popup-top-fadeout .3s ease-in-out}.popup-fade-right-active-show{animation:popup-right-fadein .3s ease-in-out}.popup-fade-right-active-hide{animation:popup-right-fadeout .3s ease-in-out}.popup-fade-left-active-show{animation:popup-left-fadein .3s ease-in-out}.popup-fade-left-active-hide{animation:popup-left-fadeout .3s ease-in-out}.popup-fade-bottom-active-show{animation:popup-bottom-fadein .3s ease-in-out}.popup-fade-bottom-active-hide{animation:popup-bottom-fadeout .3s ease-in-out}@keyframes popup-center-fadein{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}@keyframes popup-center-fadeout{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1)}100%{transform:scale(.8);opacity:0}}@keyframes popup-top-fadein{0%{transform:translate3d(0,-100%,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-top-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,-100%,0);opacity:.1}}@keyframes popup-left-fadein{0%{transform:translate3d(-100%,0,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-left-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(-100%,0,0);opacity:.1}}@keyframes popup-right-fadein{0%{transform:translate3d(100%,0,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-right-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(100%,0,0);opacity:.1}}@keyframes popup-bottom-fadein{0%{transform:translate3d(0,100%,0);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-bottom-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,100%,0);opacity:.1}}
1+
.container-popup{visibility:hidden;position:fixed;top:0;left:0;right:0;bottom:0}.popup-show{visibility:visible}.popup-show .container-bg{display:block}.container-bg{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;transition:all .3s ease-in-out}.popup-bg{height:100%;width:100%;position:absolute;z-index:90}.popup-content-left,.popup-content-right{height:100%}.popup-content-bottom,.popup-content-top{width:100%}.center{display:flex;height:100%;width:100%;flex-direction:row;align-items:center;justify-content:center}.left{display:flex;flex-direction:row;height:100%}.right{display:flex;flex-direction:row;justify-content:flex-end;height:100%}.bottom{display:flex;flex-direction:column-reverse;width:100%}.center-lin-enter-class,.center-lin-leave-to-class{transform:scale(.8)}.center-lin-enter-active-class,.center-lin-leave-active-class{transform:scale(1.2)}.center-lin-enter-to-class,.center-lin-leave-class{transform:scale(1)}.left-lin-enter-class,.left-lin-leave-to-class{transform:translate3d(-100%,0,0);height:100%}.left-lin-enter-active-class,.left-lin-leave-active-class{transform:translate3d(-100%,0,0);height:100%}.left-lin-enter-to-class,.left-lin-leave-class{transform:translate3d(0,0,0);height:100%}.right-lin-enter-class,.right-lin-leave-to-class{transform:translate3d(100%,0,0);height:100%}.right-lin-enter-active-class,.right-lin-leave-active-class{transform:translate3d(100%,0,0);height:100%}.right-lin-enter-to-class,.right-lin-leave-class{transform:translate3d(0,0,0);height:100%}.top-lin-enter-class,.top-lin-leave-to-class{transform:translate3d(0,-100%,0);width:100%}.top-lin-enter-active-class,.top-lin-leave-active-class{transform:translate3d(0,-100%,0);width:100%}.top-lin-enter-to-class,.top-lin-leave-class{transform:translate3d(0,0,0);width:100%}.bottom-lin-enter-class,.bottom-lin-leave-to-class{transform:translate3d(0,100%,0);width:100%}.bottom-lin-enter-active-class,.bottom-lin-leave-active-class{transform:translate3d(0,100%,0);width:100%}.bottom-lin-enter-to-class,.bottom-lin-leave-class{transform:translate3d(0,0,0);width:100%}

examples/dist/popup/index.js

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,29 @@ Component({
66
* 组件的属性列表
77
*/
88
behaviors: [zIndex, validator],
9-
externalClasses: ['l-bg-class'],
9+
externalClasses: ['l-bg-class', 'l-panel-class', '1-class'],
1010
properties: {
1111
// 显示与隐藏
1212
show: {
1313
type: Boolean,
1414
value: false
1515
},
16-
// 动画效果的显示和隐藏
16+
// 动画效果的显示和隐藏 --- 该属性更名为 transition
1717
animation: {
1818
type: Boolean,
1919
value: true
2020
},
21-
// slot的位置
21+
transition: {
22+
type: Boolean,
23+
value: true
24+
},
25+
// slot的位置 --- 该属性更名为 direction
2226
contentAlign: {
27+
type: String,
28+
value: '',
29+
options: ['', 'top', 'right', 'left', 'bottom', 'center']
30+
},
31+
direction: {
2332
type: String,
2433
value: 'center',
2534
options: ['top', 'right', 'left', 'bottom', 'center']
@@ -28,6 +37,10 @@ Component({
2837
locked: {
2938
type: Boolean,
3039
value: false
40+
},
41+
opacity: {
42+
type: Number,
43+
value: 0.4
3144
}
3245
},
3346

examples/dist/popup/index.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
12
{
23
"component": true,
3-
"usingComponents": {}
4-
}
4+
"usingComponents": {
5+
"l-transition":"../transition/index"
6+
}
7+
}

examples/dist/popup/index.wxml

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,27 @@
11
<!-- popup.wxml -->
2-
<view class='container-popup {{ show ? "popup-show" : "" }} {{ "l-popup-" + contentAlign }} ' style="z-index:{{zIndex}}; " catchtouchmove="doNothingMove">
3-
<view class='container-bg l-bg-class'></view>
4-
<view
5-
wx:if="{{show}}"
6-
class="popup-content {{ show ? contentAlign : ''}} popup-fade-{{contentAlign}}-active-{{animation ? status:''}}" catchtap='onPupopTap'>
7-
<view catchtap="doNothingTap">
8-
<slot></slot>
2+
<view class='l-class container-popup {{ show ? "popup-show" : "" }} {{contentAlign ? contentAlign : direction}}' style="z-index:{{zIndex}};" >
3+
<view class='container-bg l-bg-class' style="opacity: {{opacity}}" catchtap='onPupopTap' catchtouchmove="doNothingMove"></view>
4+
<l-transition
5+
wx:if="{{animation && transition}}"
6+
show="{{ show }}"
7+
class="popup-content"
8+
name=""
9+
duration="300"
10+
l-enter-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-class"}}'
11+
l-enter-active-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-active-class"}}'
12+
l-enter-to-class='{{(contentAlign ? contentAlign : direction) + "-lin-enter-to-class"}}'
13+
l-leave-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-class"}}'
14+
l-leave-active-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-active-class"}}'
15+
l-leave-to-class='{{(contentAlign ? contentAlign : direction) + "-lin-leave-to-class"}}'
16+
>
17+
<view class='{{"popup-content-"+ (contentAlign ? contentAlign : direction)}} l-panel-class' >
18+
<slot></slot>
19+
</view>
20+
</l-transition>
21+
<view wx:if="{{!(animation && transition) && show}}" class="popup-content" style="z-index:100">
22+
<view class='test {{"popup-content-"+ (contentAlign ? contentAlign : direction)}} l-panel-class'>
23+
<slot></slot>
24+
</view>
925
</view>
1026
</view>
11-
</view>
27+

examples/dist/popup/index.wxss

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
.container-popup{visibility:hidden;position:fixed;top:0;left:0;right:0;bottom:0}.popup-show{visibility:visible}.popup-show .container-bg{display:block;opacity:1}.container-bg{opacity:0;position:fixed;top:0;left:0;right:0;bottom:0;z-index:6;background:rgba(0,0,0,.4);transition:all .3s ease-in-out}.popup-bg{height:100%;width:100%;position:absolute;z-index:90}.popup-content{position:absolute;z-index:100;width:100%;max-width:100%;height:100%}.center{display:flex;height:100%;width:100%;flex-direction:row;align-items:center;justify-content:center}.left{display:flex;flex-direction:row;height:100%}.right{display:flex;flex-direction:row;justify-content:flex-end;height:100%}.bottom{display:flex;flex-direction:column-reverse;width:100%}.popup-fade-center-active-show{animation:popup-center-fadein .4s}.popup-fade-center-active-hide{animation:popup-center-fadeout .4s}.popup-fade-top-active-show{animation:popup-top-fadein .3s ease-in-out}.popup-fade-top-active-hide{animation:popup-top-fadeout .3s ease-in-out}.popup-fade-right-active-show{animation:popup-right-fadein .3s ease-in-out}.popup-fade-right-active-hide{animation:popup-right-fadeout .3s ease-in-out}.popup-fade-left-active-show{animation:popup-left-fadein .3s ease-in-out}.popup-fade-left-active-hide{animation:popup-left-fadeout .3s ease-in-out}.popup-fade-bottom-active-show{animation:popup-bottom-fadein .3s ease-in-out}.popup-fade-bottom-active-hide{animation:popup-bottom-fadeout .3s ease-in-out}@keyframes popup-center-fadein{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}@keyframes popup-center-fadeout{0%{transform:scale(1);opacity:1}50%{transform:scale(1.1)}100%{transform:scale(.8);opacity:0}}@keyframes popup-top-fadein{0%{transform:translate3d(0,-100%,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-top-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,-100%,0);opacity:.1}}@keyframes popup-left-fadein{0%{transform:translate3d(-100%,0,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-left-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(-100%,0,0);opacity:.1}}@keyframes popup-right-fadein{0%{transform:translate3d(100%,0,0);opacity:.1}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-right-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(100%,0,0);opacity:.1}}@keyframes popup-bottom-fadein{0%{transform:translate3d(0,100%,0);opacity:0}100%{transform:translate3d(0,0,0);opacity:1}}@keyframes popup-bottom-fadeout{0%{transform:translate3d(0,0,0);opacity:1}100%{transform:translate3d(0,100%,0);opacity:.1}}
1+
.container-popup{visibility:hidden;position:fixed;top:0;left:0;right:0;bottom:0}.popup-show{visibility:visible}.popup-show .container-bg{display:block}.container-bg{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;transition:all .3s ease-in-out}.popup-bg{height:100%;width:100%;position:absolute;z-index:90}.popup-content-left,.popup-content-right{height:100%}.popup-content-bottom,.popup-content-top{width:100%}.center{display:flex;height:100%;width:100%;flex-direction:row;align-items:center;justify-content:center}.left{display:flex;flex-direction:row;height:100%}.right{display:flex;flex-direction:row;justify-content:flex-end;height:100%}.bottom{display:flex;flex-direction:column-reverse;width:100%}.center-lin-enter-class,.center-lin-leave-to-class{transform:scale(.8)}.center-lin-enter-active-class,.center-lin-leave-active-class{transform:scale(1.2)}.center-lin-enter-to-class,.center-lin-leave-class{transform:scale(1)}.left-lin-enter-class,.left-lin-leave-to-class{transform:translate3d(-100%,0,0);height:100%}.left-lin-enter-active-class,.left-lin-leave-active-class{transform:translate3d(-100%,0,0);height:100%}.left-lin-enter-to-class,.left-lin-leave-class{transform:translate3d(0,0,0);height:100%}.right-lin-enter-class,.right-lin-leave-to-class{transform:translate3d(100%,0,0);height:100%}.right-lin-enter-active-class,.right-lin-leave-active-class{transform:translate3d(100%,0,0);height:100%}.right-lin-enter-to-class,.right-lin-leave-class{transform:translate3d(0,0,0);height:100%}.top-lin-enter-class,.top-lin-leave-to-class{transform:translate3d(0,-100%,0);width:100%}.top-lin-enter-active-class,.top-lin-leave-active-class{transform:translate3d(0,-100%,0);width:100%}.top-lin-enter-to-class,.top-lin-leave-class{transform:translate3d(0,0,0);width:100%}.bottom-lin-enter-class,.bottom-lin-leave-to-class{transform:translate3d(0,100%,0);width:100%}.bottom-lin-enter-active-class,.bottom-lin-leave-active-class{transform:translate3d(0,100%,0);width:100%}.bottom-lin-enter-to-class,.bottom-lin-leave-class{transform:translate3d(0,0,0);width:100%}

src/popup/index.js

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,29 @@ Component({
66
* 组件的属性列表
77
*/
88
behaviors: [zIndex, validator],
9-
externalClasses: ['l-bg-class'],
9+
externalClasses: ['l-bg-class', 'l-panel-class', '1-class'],
1010
properties: {
1111
// 显示与隐藏
1212
show: {
1313
type: Boolean,
1414
value: false
1515
},
16-
// 动画效果的显示和隐藏
16+
// 动画效果的显示和隐藏 --- 该属性更名为 transition
1717
animation: {
1818
type: Boolean,
1919
value: true
2020
},
21-
// slot的位置
21+
transition: {
22+
type: Boolean,
23+
value: true
24+
},
25+
// slot的位置 --- 该属性更名为 direction
2226
contentAlign: {
27+
type: String,
28+
value: '',
29+
options: ['', 'top', 'right', 'left', 'bottom', 'center']
30+
},
31+
direction: {
2332
type: String,
2433
value: 'center',
2534
options: ['top', 'right', 'left', 'bottom', 'center']
@@ -28,6 +37,10 @@ Component({
2837
locked: {
2938
type: Boolean,
3039
value: false
40+
},
41+
opacity: {
42+
type: Number,
43+
value: 0.4
3144
}
3245
},
3346

src/popup/index.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1+
12
{
23
"component": true,
3-
"usingComponents": {}
4-
}
4+
"usingComponents": {
5+
"l-transition":"../transition/index"
6+
}
7+
}

0 commit comments

Comments
 (0)