肆拾步惑 發表於 2021-3-8 17:51:00

使用uni-app给一个按钮点击后修改样式,实现样式切换

<div class="cnblogs_code">
<p>&lt;template&gt;<br>          &lt;view class="box"&gt;<br>                    &lt;view class="loginBox"&gt;<br>                              &lt;view class="popup"&gt;<br>                                        &lt;view class="loginMode"&gt;<br>                                                  &lt;view class="account" @click="isAccount" :class="!isshowAccount ? 'isAccMax': 'isAccMin'"&gt;账号登录&lt;/view&gt;  //&nbsp;isshowAccount :通过判断它的值来显示对应的样式<br>                                                  &lt;view class="verification" @click="isVerification" :class="!isshowVerification ? 'isVerMin': 'isVerMax'"&gt;验证码登录&lt;/view&gt;<br>                                        &lt;/view&gt;</p>
<p><br>                                    &lt;!-- 账号密码登录 --&gt;<br>                                        &lt;view v-show="isshowAccount" class="isshowBox"&gt;  //&nbsp;v-show&nbsp;来控制输入框的显示与隐藏<br>                                                  &lt;view class="inputBox"&gt;<br>                                                            &lt;u-field<br>                                                                      v-model="mobile"<br>                                                                      label="手机号"<br>                                                                      placeholder="请输入手机号"<br>                                                            &gt;<br>                                                            &lt;/u-field&gt;<br>                                                            &lt;u-field<br>                                                                      v-model="code"<br>                                                                      label="密码"<br>                                                                      placeholder="请输入密码"<br>                                                            &gt;<br>                                                            &lt;/u-field&gt;<br>                                                &lt;/view&gt;<br>                                                &lt;u-button type="primary" @click="viewProtocol" class="denglu"&gt;登录&lt;/u-button&gt;<br>                                      &lt;/view&gt;</p>
<p><br>                                    &lt;!-- 验证码登录 --&gt;<br>                                <br>                                      &lt;view v-show="isshowVerification" class="isshowBox" &gt;<br>                                                &lt;view class="inputBox"&gt;<br>                                                          &lt;u-field<br>                                                                    v-model="mobile"<br>                                                                    label="手机号"<br>                                                                    placeholder="请输入手机号"<br>                                                          &gt;<br>                                                          &lt;/u-field&gt;<br>                                                          &lt;u-field<br>                                                                  v-model="code"<br>                                                                  label="验证码"<br>                                                                  placeholder="请输入验证码"<br>                                                          &gt;<br>                                                          &lt;u-button size="mini" slot="right"@click="getCode"&gt;{{codeText}}&lt;/u-button&gt;<br>                                                          &lt;/u-field&gt;<br>                                                          &lt;u-verification-code ref="uCode" @change="codeChange"&gt;&lt;/u-verification-code&gt;<br>                                                &lt;/view&gt;<br>                                                &lt;u-button type="primary" @click="viewProtocol" class="denglu"&gt;登录&lt;/u-button&gt;<br>                                      &lt;/view&gt;<br>                                <br>                              &lt;/view&gt;<br>                    &lt;/view&gt;<br>          &lt;/view&gt;<br>&lt;/template&gt;</p>
<p>&lt;script&gt;<br>        export default {<br>                    data() {<br>                              return {<br>                                        mobile: '',        // 手机号<br>                                        code: '',        // 密码<br>                                        codeText:''        ,// 模拟获取验证码<br>                                        isshowAccount:true,        // 默认显示账号密码登录<br>                                        isshowVerification:false,        // 隐藏验证码登录<br>                              }<br>                    },<br>                    methods: {<br>                              // 点击验证码<br>                              isVerification(){<br>                                        this.isshowAccount = false        // 隐藏账号登录<br>                                        this.isshowVerification = true        // 显示验证码登录<br>                              },</p>
<p><br>                              // 点击账号<br>                              isAccount() {<br>                                        this.isshowVerification = false        // 隐藏验证码登录<br>                                        this.isshowAccount = true        // 显示账号登录<br>                              },</p>
<p><br>                              // 模拟获取验证码<br>                              codeChange(text) {<br>                                        this.codeText = text;<br>                              },<br>                              getCode() {<br>                                        if(this.$refs.uCode.canGetCode) {<br>                                                  // 模拟向后端请求验证码<br>                                                uni.showLoading({<br>                                                          title: '正在获取验证码'<br>                                                })<br>                                                setTimeout(() =&gt; {<br>                                                          uni.hideLoading();<br>                                                          // 通知验证码组件内部开始倒计时<br>                                                          this.$refs.uCode.start();<br>                                                }, 1000);<br>                                      }else {<br>                                                this.$u.toast('倒计时结束后再发送');<br>                                      }<br>                            },</p>
<p><br>                              // 点击登录后进行页面的跳转<br>                              viewProtocol() {<br>                                        uni.navigateTo({<br>                                                url: '/pages/index/list'<br>                                        })<br>                              },<br>                    }<br>          }<br>&lt;/script&gt;</p>
<p>&lt;style lang="scss"&gt;<br>        .box {<br>                    width: 100%;<br>                    height: 100%;<br>                    position: relative;<br>                    &gt;.loginBox {<br>                               width: 100%;<br>                               height: 100%;<br>                               background-color: #409EFF;<br>                               position: fixed;<br>                               top: 0px;<br>                               left: 0px;<br>                               &gt;.popup {<br>          width: 315px;<br>                                          height: 324px;<br>                                          background-color: #FFFFFF;<br>                                          position: absolute;<br>                                          top: 50%;<br>                                          left: 50%;<br>                                          padding-left: 26px;<br>                                          padding-right: 26px;<br>                                          transform: translate(-50%,-50%);<br>                                          border-radius: 10px;<br>                                          &gt;.loginMode {<br>                                                     width: 263px;<br>                                                     height: 31px;<br>                                                     margin-top: 36px;<br>                                                     margin-bottom: 20px;<br>                                                     border-bottom: 1px solid #F8F8F8;<br>                                                  // 控制切换登录时的样式<br>                                                     &gt;.isAccMax {<br>                font-size: 15px;<br>                                                                margin-top: 6px;<br>                                                                color: #D3D3D3;<br>                                                     }<br>                                                    &nbsp;&nbsp;&gt;.isAccMin {<br>                                                                font-size: 18px;<br>                                                                font-weight: 600;<br>                                                                margin-top: 3px;<br>                                                                border-right: 1px solid #F8F8F8;<br>                                                     }<br>                                                    &nbsp;&nbsp;&gt;.isVerMin {<br>                                                                font-size: 15px;<br>                                                                margin-top: 6px;<br>                                                                color: #D3D3D3;<br>                                                     }<br>                                                     &gt;.isVerMax {<br>                                                                font-size: 18px;<br>                                                                font-weight: 600;<br>                                                                margin-top: 3px;<br>                                                                border-left: 1px solid #F8F8F8;<br>                                                     }<br>                                                     &gt;.account, .verification{<br>                                                                width: 131px;<br>                                                                height: 33px;<br>                                                                display: inline-block;<br>                                                                text-align: center;<br>                                                     }<br>                                           }<br>                                           .denglu {<br>                                                       margin-top: 36px;<br>                                           }<br>                                  }<br>                        }<br>              }<br>&lt;/style&gt;</p>
</div>
<ul>
<li>最终实现效果:</li>
</ul>
<p><img src="https://img2020.cnblogs.com/blog/1834471/202103/1834471-20210308172602176-2001798069.png">  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<img src="https://img2020.cnblogs.com/blog/1834471/202103/1834471-20210308172644615-1551500568.png"></p>
<p>&nbsp;</p>
<p>注意哦:我使用的是uni-app +&nbsp;uView&nbsp;写的,记得引入一下uView,刚用不久uni-app +&nbsp;uView&nbsp;写代码,写的不好的请多多指教,这里只是给自己做了个笔记,写的不好的地方请见谅,谢谢</p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/funing-z/p/14501054.html
頁: [1]
查看完整版本: 使用uni-app给一个按钮点击后修改样式,实现样式切换