#36 Add basic popups

This commit is contained in:
计算机202-于梓漪 2022-01-20 12:49:02 +08:00
parent cf4dd727c5
commit cd8ca7dcc4
7 changed files with 68 additions and 1 deletions

View File

@ -0,0 +1,15 @@
@import "../../app.scss";
view.popups {
position: fixed;
width: 75%;
height: 75%;
margin:auto;
left:0;
right:0;
top:0;
bottom:0;
background-color: $theme-color-light-layout;
border-radius: 15px;
z-index: 2;
}

View File

@ -0,0 +1,36 @@
import { Modular, Manager } from "../../core/Module";
class Popups<M extends Manager> extends Modular<M> {
public data? = {
/**
*
*/
isShow: false
};
private disappearTimer?: number;
/**
*
*/
public showPopups() {
this.setData({ isShow: true });
}
/**
*
*/
public hidePopups() {
this.setData({ isShow: false });
}
public override onLoad() {
// Do something
}
}
export { Popups };
export default Popups;

View File

@ -2,6 +2,7 @@
@import "./MainFunction.scss";
@import "./FunctionList.scss";
@import "../../modular/Mask/Mask.scss";
@import "../../modular/Popups/Popups.scss";
view.container{
padding-top: 50rpx;

View File

@ -3,10 +3,12 @@ import { UserCard } from "./UserCard";
import { MainFunction } from "./MainFunction";
import { FunctionList } from "./FunctionList";
import { Mask } from "../../modular/Mask/Mask";
import {Popups} from "../../modular/Popups/Popups"
Manager.Page((manager) => {
const popups = manager.addModule(Popups,"popups")
const mask = manager.addModule(Mask, "mask");
manager.addModule(UserCard, "userCard", { mask });
manager.addModule(UserCard, "userCard", { mask,popups });
manager.addModule(MainFunction, "mainFunction");
manager.addModule(FunctionList, "functionList");
});

View File

@ -1,6 +1,9 @@
<!-- 蒙版 -->
<view class="mask" bindtap="mask$handleClickMask" style="display:{{mask$isShow ? 'block' : 'none'}}"></view>
<!-- 弹出层 -->
<view class="popups" style="display:{{popups$isShow ? 'block' : 'none'}}"></view>
<!-- 顶部的阴影 -->
<view class="top-shadow"></view>

View File

@ -1,8 +1,10 @@
import Popups from "modular/Popups/Popups";
import { Modular, Manager } from "../../core/Module";
import { Mask } from "../../modular/Mask/Mask";
type IUserCardDependent<M extends Manager> = {
mask: Mask<M>
popups:Popups<M>
}
class UserCard<M extends Manager> extends Modular<M, IUserCardDependent<M>> {
@ -16,6 +18,7 @@ class UserCard<M extends Manager> extends Modular<M, IUserCardDependent<M>> {
*/
private handleChangeTheme() {
this.depends?.mask.showMask();
this.depends?.popups.showPopups();
}
}

View File

@ -1,4 +1,5 @@
{
"setting": {},
"condition": {
"plugin": {
"list": []
@ -16,6 +17,12 @@
"pathName": "pages/Account/Account",
"query": "",
"scene": null
},
{
"name": "pages/Account/Account",
"pathName": "pages/Account/Account",
"query": "",
"scene": null
}
]
}