|
@@ -47,263 +47,283 @@
|
|
</template>
|
|
</template>
|
|
|
|
|
|
<script>
|
|
<script>
|
|
- import { ACCESS_TOKEN,USER_NAME,USER_INFO } from "@/common/util/constants"
|
|
|
|
- import { mapActions } from "vuex"
|
|
|
|
- import configService from '@/common/service/config.service.js';
|
|
|
|
-
|
|
|
|
- export default {
|
|
|
|
- data() {
|
|
|
|
- return {
|
|
|
|
- shape:'',//round 圆形
|
|
|
|
- loading: false,
|
|
|
|
- userName: '',
|
|
|
|
- password: '',
|
|
|
|
- phoneNo: '',
|
|
|
|
- smsCode: '',
|
|
|
|
- showPassword: false, //是否显示明文
|
|
|
|
- smsCountDown: 0,
|
|
|
|
- smsCountInterval: null,
|
|
|
|
- toggleDelay: false,
|
|
|
|
- version:'',
|
|
|
|
- //第三方登录相关信息
|
|
|
|
- thirdType:"",
|
|
|
|
- thirdLoginInfo:"",
|
|
|
|
- thirdLoginState:false,
|
|
|
|
- bindingPhoneModal:false,
|
|
|
|
- thirdUserUuid:''
|
|
|
|
- };
|
|
|
|
- },
|
|
|
|
- onLoad:function(){
|
|
|
|
- // #ifdef APP-PLUS
|
|
|
|
- var that=this
|
|
|
|
- plus.runtime.getProperty( plus.runtime.appid, function ( wgtinfo ) {
|
|
|
|
- that.version=wgtinfo.version
|
|
|
|
- });
|
|
|
|
- // #endif
|
|
|
|
- },
|
|
|
|
- computed: {
|
|
|
|
- isSendSMSEnable() {
|
|
|
|
- return this.smsCountDown <= 0 && this.phoneNo.length > 4;
|
|
|
|
- },
|
|
|
|
- getSendBtnText() {
|
|
|
|
- if (this.smsCountDown > 0) {
|
|
|
|
- return this.smsCountDown + '秒后发送';
|
|
|
|
- } else {
|
|
|
|
- return '发送验证码';
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- canSMSLogin() {
|
|
|
|
- return this.userName.length > 4 && this.smsCode.length > 4;
|
|
|
|
- },
|
|
|
|
- canPwdLogin() {
|
|
|
|
- return this.userName.length > 4 && this.password.length > 4;
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- methods: {
|
|
|
|
- ...mapActions([ "mLogin","PhoneLogin","ThirdLogin" ]),
|
|
|
|
- onLogin: function (){
|
|
|
|
- if(!this.userName || this.userName.length==0){
|
|
|
|
- this.$tip.toast('请填写用户名');
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- if(!this.password || this.password.length==0){
|
|
|
|
- this.$tip.toast('请填写密码');
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- let loginParams = {
|
|
|
|
- username:this.userName,
|
|
|
|
- password:this.password
|
|
|
|
- }
|
|
|
|
- this.loading=true;
|
|
|
|
- this.mLogin(loginParams).then((res) => {
|
|
|
|
- this.loading=false;
|
|
|
|
- if(res.data.success){
|
|
|
|
- // #ifdef APP-PLUS
|
|
|
|
- this.saveClientId()
|
|
|
|
- // #endif
|
|
|
|
- // #ifndef APP-PLUS
|
|
|
|
- this.$tip.success('登录成功!')
|
|
|
|
- this.$Router.replaceAll({name:'index'})
|
|
|
|
- // #endif
|
|
|
|
- }else{
|
|
|
|
- this.$tip.alert(res.data.message);
|
|
|
|
- }
|
|
|
|
- }).catch((err) => {
|
|
|
|
- let msg = err.data.message || "请求出现错误,请稍后再试"
|
|
|
|
- this.loading=false;
|
|
|
|
- this.$tip.alert(msg);
|
|
|
|
- }).finally(()=>{
|
|
|
|
- this.loading=false;
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- saveClientId(){
|
|
|
|
- var info = plus.push.getClientInfo();
|
|
|
|
- var cid = info.clientid;
|
|
|
|
- this.$http.get("/sys/user/saveClientId",{params:{clientId:cid}}).then(res=>{
|
|
|
|
- console.log("res::saveClientId>",res)
|
|
|
|
- this.$tip.success('登录成功!')
|
|
|
|
- this.$Router.replaceAll({name:'index'})
|
|
|
|
- })
|
|
|
|
- },
|
|
|
|
- changePassword() {
|
|
|
|
- this.showPassword = !this.showPassword;
|
|
|
|
- },
|
|
|
|
- onSMSSend() {
|
|
|
|
- let smsParams = {};
|
|
|
|
- smsParams.mobile=this.phoneNo;
|
|
|
|
- smsParams.smsmode="0";
|
|
|
|
- let checkPhone = new RegExp(/^[1]([3-9])[0-9]{9}$/);
|
|
|
|
- if(!smsParams.mobile || smsParams.mobile.length==0){
|
|
|
|
- this.$tip.toast('请输入手机号');
|
|
|
|
- return false
|
|
|
|
- }
|
|
|
|
- if(!checkPhone.test(smsParams.mobile)){
|
|
|
|
- this.$tip.toast('请输入正确的手机号');
|
|
|
|
- return false
|
|
|
|
- }
|
|
|
|
- this.$http.post("/sys/sms",smsParams).then(res=>{
|
|
|
|
- if(res.data.success){
|
|
|
|
- this.smsCountDown = 60;
|
|
|
|
- this.startSMSTimer();
|
|
|
|
- }else{
|
|
|
|
- this.smsCountDown = 0;
|
|
|
|
- this.$tip.toast(res.data.message);
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- startSMSTimer() {
|
|
|
|
- this.smsCountInterval = setInterval(() => {
|
|
|
|
- this.smsCountDown--;
|
|
|
|
- if (this.smsCountDown <= 0) {
|
|
|
|
- clearInterval(this.smsCountInterval);
|
|
|
|
- }
|
|
|
|
- }, 1000);
|
|
|
|
- },
|
|
|
|
- onSMSLogin() {
|
|
|
|
- let checkPhone = new RegExp(/^[1]([3-9])[0-9]{9}$/);
|
|
|
|
-
|
|
|
|
- if(!this.phoneNo || this.phoneNo.length==0){
|
|
|
|
- this.$tip.toast('请填写手机号');
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- if(!checkPhone.test(this.phoneNo)){
|
|
|
|
- this.$tip.toast('请输入正确的手机号');
|
|
|
|
- return false
|
|
|
|
- }
|
|
|
|
- if(!this.smsCode || this.smsCode.length==0){
|
|
|
|
- this.$tip.toast('请填短信验证码');
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
- let loginParams = {
|
|
|
|
- mobile:this.phoneNo,
|
|
|
|
- captcha:this.smsCode
|
|
|
|
- };
|
|
|
|
- this.PhoneLogin(loginParams).then((res) => {
|
|
|
|
- console.log("res====》",res)
|
|
|
|
- if(res.data.success){
|
|
|
|
- this.$tip.success('登录成功!')
|
|
|
|
- this.$Router.replaceAll({name:'index'})
|
|
|
|
- }else{
|
|
|
|
- this.$tip.error(res.data.message);
|
|
|
|
- }
|
|
|
|
- }).catch((err) => {
|
|
|
|
- let msg = ((err.response || {}).data || {}).message || err.data.message || "请求出现错误,请稍后再试"
|
|
|
|
- this.$tip.error(msg);
|
|
|
|
- });
|
|
|
|
- },
|
|
|
|
- loginSuccess() {
|
|
|
|
- // 登陆成功,重定向到主页
|
|
|
|
- this.$Router.replace({name:'index'})
|
|
|
|
- },
|
|
|
|
- requestFailed(err) {
|
|
|
|
- this.$message.warning("登录失败")
|
|
|
|
- },
|
|
|
|
- changeloginType(){
|
|
|
|
- console.log("changeloginType====")
|
|
|
|
- var tourl = configService.apiUrl;
|
|
|
|
- tourl = tourl.replace(9999,8080);
|
|
|
|
- tourl = 'https://id.shendong.com.cn/default' + '/login?service=' + 'http://localhost:8080';
|
|
|
|
- console.log("==========="+tourl);
|
|
|
|
- if (process.env.VUE_APP_PLATFORM != 'h5'){
|
|
|
|
- // plus.runtime.openURL('http://localhost:8080?ticket=12345')
|
|
|
|
- this.openBrowser('http://localhost:8080?ticket=12345');
|
|
|
|
- }
|
|
|
|
- else
|
|
|
|
- this.openBrowser('https://www.baidu.com');
|
|
|
|
- // window.location.href='/pages/index/index?ticket=123'
|
|
|
|
- // this.$router.push({ path: '/pages/index/index?ticket=123',query:"2w354" })
|
|
|
|
- },
|
|
|
|
- openBrowser(url) {
|
|
|
|
- // 使用uni.navigateTo打开内置浏览器
|
|
|
|
- console.log("----url---------------"+url)
|
|
|
|
- uni.navigateTo({
|
|
|
|
- "url": '/pages/webview/webview?url=' + encodeURIComponent(url)
|
|
|
|
- });
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- beforeDestroy() {
|
|
|
|
- if (this.smsCountInterval) {
|
|
|
|
- clearInterval(this.smsCountInterval);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
|
|
+import { ACCESS_TOKEN, USER_NAME, USER_INFO } from "@/common/util/constants";
|
|
|
|
+import { mapActions } from "vuex";
|
|
|
|
+import configService from "@/common/service/config.service.js";
|
|
|
|
+
|
|
|
|
+export default {
|
|
|
|
+ data() {
|
|
|
|
+ return {
|
|
|
|
+ shape: "", //round 圆形
|
|
|
|
+ loading: false,
|
|
|
|
+ userName: "",
|
|
|
|
+ password: "",
|
|
|
|
+ phoneNo: "",
|
|
|
|
+ smsCode: "",
|
|
|
|
+ showPassword: false, //是否显示明文
|
|
|
|
+ smsCountDown: 0,
|
|
|
|
+ smsCountInterval: null,
|
|
|
|
+ toggleDelay: false,
|
|
|
|
+ version: "",
|
|
|
|
+ //第三方登录相关信息
|
|
|
|
+ thirdType: "",
|
|
|
|
+ thirdLoginInfo: "",
|
|
|
|
+ thirdLoginState: false,
|
|
|
|
+ bindingPhoneModal: false,
|
|
|
|
+ thirdUserUuid: "",
|
|
|
|
+ };
|
|
|
|
+ },
|
|
|
|
+ onLoad: function () {
|
|
|
|
+ // #ifdef APP-PLUS
|
|
|
|
+ var that = this;
|
|
|
|
+ plus.runtime.getProperty(plus.runtime.appid, function (wgtinfo) {
|
|
|
|
+ that.version = wgtinfo.version;
|
|
|
|
+ });
|
|
|
|
+ // #endif
|
|
|
|
+ },
|
|
|
|
+ computed: {
|
|
|
|
+ isSendSMSEnable() {
|
|
|
|
+ return this.smsCountDown <= 0 && this.phoneNo.length > 4;
|
|
|
|
+ },
|
|
|
|
+ getSendBtnText() {
|
|
|
|
+ if (this.smsCountDown > 0) {
|
|
|
|
+ return this.smsCountDown + "秒后发送";
|
|
|
|
+ } else {
|
|
|
|
+ return "发送验证码";
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ canSMSLogin() {
|
|
|
|
+ return this.userName.length > 4 && this.smsCode.length > 4;
|
|
|
|
+ },
|
|
|
|
+ canPwdLogin() {
|
|
|
|
+ return this.userName.length > 4 && this.password.length > 4;
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ ...mapActions(["mLogin", "PhoneLogin", "ThirdLogin"]),
|
|
|
|
+ onLogin: function () {
|
|
|
|
+ if (!this.userName || this.userName.length == 0) {
|
|
|
|
+ this.$tip.toast("请填写用户名");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if (!this.password || this.password.length == 0) {
|
|
|
|
+ this.$tip.toast("请填写密码");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ let loginParams = {
|
|
|
|
+ username: this.userName,
|
|
|
|
+ password: this.password,
|
|
|
|
+ };
|
|
|
|
+ this.loading = true;
|
|
|
|
+ this.mLogin(loginParams)
|
|
|
|
+ .then((res) => {
|
|
|
|
+ this.loading = false;
|
|
|
|
+ if (res.data.success) {
|
|
|
|
+ // #ifdef APP-PLUS
|
|
|
|
+ this.saveClientId();
|
|
|
|
+ // #endif
|
|
|
|
+ // #ifndef APP-PLUS
|
|
|
|
+ this.$tip.success("登录成功!");
|
|
|
|
+ uni.navigateTo({
|
|
|
|
+ url: "/pages/index/index",
|
|
|
|
+ });
|
|
|
|
+ // #endif
|
|
|
|
+ } else {
|
|
|
|
+ this.$tip.alert(res.data.message);
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ .catch((err) => {
|
|
|
|
+ let msg = err.data.message || "请求出现错误,请稍后再试";
|
|
|
|
+ this.loading = false;
|
|
|
|
+ this.$tip.alert(msg);
|
|
|
|
+ })
|
|
|
|
+ .finally(() => {
|
|
|
|
+ this.loading = false;
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ saveClientId() {
|
|
|
|
+ var info = plus.push.getClientInfo();
|
|
|
|
+ var cid = info.clientid;
|
|
|
|
+ this.$http
|
|
|
|
+ .get("/sys/user/saveClientId", { params: { clientId: cid } })
|
|
|
|
+ .then((res) => {
|
|
|
|
+ console.log("res::saveClientId>", res);
|
|
|
|
+ this.$tip.success("登录成功!");
|
|
|
|
+ uni.navigateTo({
|
|
|
|
+ url: "/pages/index/index",
|
|
|
|
+ });
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ changePassword() {
|
|
|
|
+ this.showPassword = !this.showPassword;
|
|
|
|
+ },
|
|
|
|
+ onSMSSend() {
|
|
|
|
+ let smsParams = {};
|
|
|
|
+ smsParams.mobile = this.phoneNo;
|
|
|
|
+ smsParams.smsmode = "0";
|
|
|
|
+ let checkPhone = new RegExp(/^[1]([3-9])[0-9]{9}$/);
|
|
|
|
+ if (!smsParams.mobile || smsParams.mobile.length == 0) {
|
|
|
|
+ this.$tip.toast("请输入手机号");
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ if (!checkPhone.test(smsParams.mobile)) {
|
|
|
|
+ this.$tip.toast("请输入正确的手机号");
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ this.$http.post("/sys/sms", smsParams).then((res) => {
|
|
|
|
+ if (res.data.success) {
|
|
|
|
+ this.smsCountDown = 60;
|
|
|
|
+ this.startSMSTimer();
|
|
|
|
+ } else {
|
|
|
|
+ this.smsCountDown = 0;
|
|
|
|
+ this.$tip.toast(res.data.message);
|
|
|
|
+ }
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ startSMSTimer() {
|
|
|
|
+ this.smsCountInterval = setInterval(() => {
|
|
|
|
+ this.smsCountDown--;
|
|
|
|
+ if (this.smsCountDown <= 0) {
|
|
|
|
+ clearInterval(this.smsCountInterval);
|
|
|
|
+ }
|
|
|
|
+ }, 1000);
|
|
|
|
+ },
|
|
|
|
+ onSMSLogin() {
|
|
|
|
+ let checkPhone = new RegExp(/^[1]([3-9])[0-9]{9}$/);
|
|
|
|
+
|
|
|
|
+ if (!this.phoneNo || this.phoneNo.length == 0) {
|
|
|
|
+ this.$tip.toast("请填写手机号");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ if (!checkPhone.test(this.phoneNo)) {
|
|
|
|
+ this.$tip.toast("请输入正确的手机号");
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ if (!this.smsCode || this.smsCode.length == 0) {
|
|
|
|
+ this.$tip.toast("请填短信验证码");
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
|
|
+ let loginParams = {
|
|
|
|
+ mobile: this.phoneNo,
|
|
|
|
+ captcha: this.smsCode,
|
|
|
|
+ };
|
|
|
|
+ this.PhoneLogin(loginParams)
|
|
|
|
+ .then((res) => {
|
|
|
|
+ console.log("res====》", res);
|
|
|
|
+ if (res.data.success) {
|
|
|
|
+ this.$tip.success("登录成功!");
|
|
|
|
+ uni.navigateTo({
|
|
|
|
+ url: "/pages/index/index",
|
|
|
|
+ });
|
|
|
|
+ } else {
|
|
|
|
+ this.$tip.error(res.data.message);
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ .catch((err) => {
|
|
|
|
+ let msg =
|
|
|
|
+ ((err.response || {}).data || {}).message ||
|
|
|
|
+ err.data.message ||
|
|
|
|
+ "请求出现错误,请稍后再试";
|
|
|
|
+ this.$tip.error(msg);
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ loginSuccess() {
|
|
|
|
+ // 登陆成功,重定向到主页
|
|
|
|
+ this.$Router.replace({ name: "index" });
|
|
|
|
+ },
|
|
|
|
+ requestFailed(err) {
|
|
|
|
+ this.$message.warning("登录失败");
|
|
|
|
+ },
|
|
|
|
+ changeloginType() {
|
|
|
|
+ console.log("changeloginType====");
|
|
|
|
+ var tourl = configService.apiUrl;
|
|
|
|
+ tourl = tourl.replace(9999, 8080);
|
|
|
|
+ tourl =
|
|
|
|
+ "https://id.shendong.com.cn/default" +
|
|
|
|
+ "/login?service=" +
|
|
|
|
+ "http://localhost:8080";
|
|
|
|
+ console.log("===========" + tourl);
|
|
|
|
+ if (process.env.VUE_APP_PLATFORM != "h5") {
|
|
|
|
+ // plus.runtime.openURL('http://localhost:8080?ticket=12345')
|
|
|
|
+ this.openBrowser("http://localhost:8080?ticket=12345");
|
|
|
|
+ } else this.openBrowser("https://www.baidu.com");
|
|
|
|
+ // window.location.href='/pages/index/index?ticket=123'
|
|
|
|
+ // this.$router.push({ path: '/pages/index/index?ticket=123',query:"2w354" })
|
|
|
|
+ },
|
|
|
|
+ openBrowser(url) {
|
|
|
|
+ // 使用uni.navigateTo打开内置浏览器
|
|
|
|
+ console.log("----url---------------" + url);
|
|
|
|
+ uni.navigateTo({
|
|
|
|
+ url: "/pages/webview/webview?url=" + encodeURIComponent(url),
|
|
|
|
+ });
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ beforeDestroy() {
|
|
|
|
+ if (this.smsCountInterval) {
|
|
|
|
+ clearInterval(this.smsCountInterval);
|
|
}
|
|
}
|
|
|
|
+ },
|
|
|
|
+};
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<style>
|
|
<style>
|
|
- .login-paddingtop {
|
|
|
|
- padding-top: 100upx;
|
|
|
|
- }
|
|
|
|
|
|
+.login-paddingtop {
|
|
|
|
+ padding-top: 100upx;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-box {
|
|
|
|
- padding: 0 20upx;
|
|
|
|
- padding-top: 100upx;
|
|
|
|
- position: relative;
|
|
|
|
- }
|
|
|
|
|
|
+.zai-box {
|
|
|
|
+ padding: 0 20upx;
|
|
|
|
+ padding-top: 100upx;
|
|
|
|
+ position: relative;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-logo {
|
|
|
|
- width: 200upx;
|
|
|
|
- height: 150px;
|
|
|
|
- }
|
|
|
|
|
|
+.zai-logo {
|
|
|
|
+ width: 200upx;
|
|
|
|
+ height: 150px;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-title {
|
|
|
|
- margin-top: 20upx;
|
|
|
|
- font-size: 58upx;
|
|
|
|
- color: #000000;
|
|
|
|
- text-align: center;
|
|
|
|
- }
|
|
|
|
|
|
+.zai-title {
|
|
|
|
+ margin-top: 20upx;
|
|
|
|
+ font-size: 58upx;
|
|
|
|
+ color: #000000;
|
|
|
|
+ text-align: center;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-title2 {
|
|
|
|
- margin-top: 20upx;
|
|
|
|
- font-size: 28upx;
|
|
|
|
- color: #000000;
|
|
|
|
- text-align: center;
|
|
|
|
- }
|
|
|
|
- .input-placeholder, .zai-input {
|
|
|
|
- color: #94afce;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- .zai-label {
|
|
|
|
- padding: 60upx 0;
|
|
|
|
- text-align: center;
|
|
|
|
- font-size: 30upx;
|
|
|
|
- color: #a7b6d0;
|
|
|
|
- }
|
|
|
|
|
|
+<<<<<<< HEAD .input-placeholder,
|
|
|
|
+.zai-input {
|
|
|
|
+ color: #94afce;
|
|
|
|
+}
|
|
|
|
+======= .zai-title2 {
|
|
|
|
+ margin-top: 20upx;
|
|
|
|
+ font-size: 28upx;
|
|
|
|
+ color: #000000;
|
|
|
|
+ text-align: center;
|
|
|
|
+}
|
|
|
|
+.input-placeholder,
|
|
|
|
+.zai-input {
|
|
|
|
+ color: #94afce;
|
|
|
|
+}
|
|
|
|
+>>>>>>>f9a901e3f950200c21f1645c7cafe558c314d958 .zai-label {
|
|
|
|
+ padding: 60upx 0;
|
|
|
|
+ text-align: center;
|
|
|
|
+ font-size: 30upx;
|
|
|
|
+ color: #a7b6d0;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-btn {
|
|
|
|
- background: #ff65a3;
|
|
|
|
- color: #fff;
|
|
|
|
- border: 0;
|
|
|
|
- border-radius: 100upx;
|
|
|
|
- font-size: 36upx;
|
|
|
|
- }
|
|
|
|
|
|
+.zai-btn {
|
|
|
|
+ background: #ff65a3;
|
|
|
|
+ color: #fff;
|
|
|
|
+ border: 0;
|
|
|
|
+ border-radius: 100upx;
|
|
|
|
+ font-size: 36upx;
|
|
|
|
+}
|
|
|
|
|
|
- .zai-btn:after {
|
|
|
|
- border: 0;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- /*按钮点击效果*/
|
|
|
|
- .zai-btn.button-hover {
|
|
|
|
- transform: translate(1upx, 1upx);
|
|
|
|
- }
|
|
|
|
|
|
+.zai-btn:after {
|
|
|
|
+ border: 0;
|
|
|
|
+}
|
|
|
|
|
|
|
|
+/*按钮点击效果*/
|
|
|
|
+.zai-btn.button-hover {
|
|
|
|
+ transform: translate(1upx, 1upx);
|
|
|
|
+}
|
|
</style>
|
|
</style>
|