Harmony在线教育app平台开发开发日志——day10

注册页面项目

注册页面主要需要完成以下几个内容
1.页面的基本样式,背景图片载入
2.验证码按钮设计
3.验证码点击后会有文字提示
4.按钮按下后会有再次发送的倒计时,且按钮不可继续按下
5.阅读协议后勾选框体才可对注册按钮进行操作
6.选择同意会自动勾选已阅读
7勾选后注册会有加载图样
成果图片展示
1.注册页面展示
在这里插入图片描述
2.验证码展示
在这里插入图片描述
3验证码点击文字提示
在这里插入图片描述
4.验证码按钮点击后的状态显示
在这里插入图片描述
5.未勾选阅读协议框体的提示
在这里插入图片描述
6点击同意后的效果
在这里插入图片描述
7.勾选已阅读后点击注册的加载页面
在这里插入图片描述
代码展示
1.HML

<element src="../loadingDialog/loadingDialog.hml" name="loading"></element>
<div class="container">
    <div style="width: 100%;height: 40px;align-items: center;margin-top: 10px;">
        <image src="common/icon/le.png" style="width: 16px;height: 16px;object-fit: contain;margin-left: 10px;">
        </image>
    </div>
    <text style="width: 100%;height: 50px;font-size: 22px;padding-left: 10px;">
      手机号注册
    </text>
    <form onsubmit="register">
    <div style="width: 100%;flex-direction: column;align-items: center;margin-top: 50px;">
        <div style="width: 94%;border-bottom: 1px solid #AAAAAA;justify-content: center;align-items: center;margin-top: 20px;">
            <input type="text" style="width:65%;background-color: white;border-radius: 2px;"placeholder="请输入手机号">
            </input>
            <select style="width: 35%;font-size: 12px;color:#949494;">
                <option value="86" selected="true">中国 +86</option>
                <option value="250">美国 +250</option>
                <option value="SB">日本 +SB</option>
            </select>>
        </div>
        <div style="width: 94%;border-bottom: 1px solid #AAAAAA;justify-content: center;align-items: center;margin-top: 20px;">
            <input type="text" style="width:65%;background-color: white;border-radius: 2px;"placeholder="请输入验证码">
            </input>
            <button type="text" style="width: 35%;font-size: 12px;color: #949494;"onclick="getCode" disabled="{{isSend}}">
                {{!isSend ?'获取验证码':'重新发送('+time+')'}}
            </button>
        </div>
        <div style="width: 94%;border-bottom: 1px solid #AAAAAA;justify-content: center;align-items: center;margin-top: 20px;">
            <input type="text" style="width:100%;background-color: white;border-radius: 2px;"placeholder="设置密码">
            </input>
        </div>
        <div style="width: 94%;height: 50px;align-items: flex-start;margin-top: 40px;">
            <image src="{{isRead?'common/icon/read-active.png':'common/icon/read.png'}}"onclick="read" style="width: 12px;height: 12px;object-fit: contain;margin-left: 2px;margin-top: 1px;">
            </image>
            <text style="font-size: 12px;color: #949494;margin-left:5px;">
            <span style="font-weight: bold;">我已阅读并同意《通鸿用户服务协议》,《隐私政策》等,接受免除或者限制责任,诉讼管辖约定等粗体标示条款</span>
            </text>
        </div>
        
        <div style="width: 94%;justify-content: center;align-items: center;margin-top: 50px;">
          <input type="submit" class="reg_btn" >
              注      册
          </input>
        </div>
    </div>
    </form>
    <div style="width: 80%;flex-direction: column;justify-content: space-around;align-items: center;margin-top: 250px;">
        <div>
            <divider style="width: 35%;color: #949494;stroke-width: 1px;line-cap: round;"vertical="false"></divider>
                <text style="width: 30%;text-align: center;font-size: 12px;color: #949494;">第三方账号登录</text>
          <divider style="width: 35%;color: #949494;stroke-width: 1px;line-cap: round;"vertical="false"></divider>
        </div>
        <div style="width: 40%;align-items: center;justify-content:space-around;">
            <image src="common/icon/wechat.png" style="width: 24px;object-fit: contain;">

            </image>
            <image src="common/icon/qq.png" style="width: 24px;object-fit: contain;">

            </image>
            <image src="common/icon/dingding.png" style="width: 24px;object-fit: contain;">

            </image>
        </div>
    </div>
    <dialog id="isReadDialog" style="width: 80%;height: 160px;margin-bottom: 50%;">
        <div style="width: 100%;height: 98%;flex-direction: column;align-items: center;justify-content: space-around;">
            <div style="width: 80%;height: 30%;align-items: center;flex-direction: column;justify-content: space-around;">
            <text style="font-size: 16px;font-weight: bold;">
              服务协议及隐私保护
            </text>
            </div>
           <div style="width: 80%;height: 50%;align-items: center;flex-direction: column;justify-content: space-around;">
            <text style="width: 100%;height: 100%;font-size: 12px;color: #949494;">
               <span>为了更好的保障您的合法权益,请您阅读并同意以下协议</span>
                <span style="font-weight: bold;">《通鸿用户服务协议》,《隐私协议》</span>
            </text>
        </div>
            <div style="width: 80%;height: 20%;align-items: center;justify-content: space-around;">
                  <button style="width: 100px;height: 24px;background-color: white;border: 1px solid #949494;font-size: 12px;border-radius: 10px;text-color: black;"onclick="refuse">
                      拒绝
                  </button>
                <button style="width: 100px;height: 24px;background-color: tomato;border: 1px solid #949494;font-size: 12px;text-color: white;border-radius: 10px;"onclick="agree">
                    同意
                </button>
            </div>
        </div>
    </dialog>
  <loading  id="dialogComp">
  </loading>
</div>
.container {
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    background-image: url("common/images/register_bg.jpg");
    background-size: 100% 100%;
}
.reg_btn{
    width: 80%;
    height: 40px;
    text-align: center;
    font-size: 16px;
    border-radius: 5px;
    background-color: tomato;
}

import prompt from '@system.prompt';
export default {
    data: {
        isSend:false,
        isRead:false,
        time:90
    },
    getCode(){
         this.isSend=true;
         prompt.showToast({
             message:'验证码已发送,请注意查收',
             duration: 3000,
             bottom:'50%'
         });
        var intervalID = setInterval(()=>{
            if(this.time>1)
               {this.time--;}
            else
            {
                 clearInterval(intervalID);
                 this.isSend=false;
            }

        },1000);
    },
    read(){
        this.isRead=!this.isRead;
    },
    refuse(){
        this.$element("isReadDialog").close();
    },
    agree(){
        this.$element("isReadDialog").close();
        this.isRead=true;
    },
    register(result){
        if(!this.isRead)
        {
            this.$element("isReadDialog").show();
            return
        }
        else
        {
            let loadingDialog = this.$child("dialogComp").$element("loadingDialog");
            loadingDialog.show();
        }
    }
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值