mirror of
https://gitee.com/xiangheng/x_admin.git
synced 2025-10-06 08:37:12 +08:00
修复部分验证码问题
This commit is contained in:
@@ -2,16 +2,14 @@
|
|||||||
"version" : "1.0",
|
"version" : "1.0",
|
||||||
"configurations" : [
|
"configurations" : [
|
||||||
{
|
{
|
||||||
"playground" : "custom",
|
"playground" : "standard",
|
||||||
"type" : "uni-app:app-android"
|
"type" : "uni-app:app-android"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"app-plus" :
|
"app-plus" : {
|
||||||
{
|
|
||||||
"launchtype" : "local"
|
"launchtype" : "local"
|
||||||
},
|
},
|
||||||
"mp-weixin" :
|
"mp-weixin" : {
|
||||||
{
|
|
||||||
"launchtype" : "local"
|
"launchtype" : "local"
|
||||||
},
|
},
|
||||||
"type" : "uniCloud"
|
"type" : "uniCloud"
|
||||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
573
x_admin_app/components/verify/verifyPoint/verifyPoint.vue
Normal file
573
x_admin_app/components/verify/verifyPoint/verifyPoint.vue
Normal file
File diff suppressed because one or more lines are too long
684
x_admin_app/components/verify/verifySlider/verifySlider.vue
Normal file
684
x_admin_app/components/verify/verifySlider/verifySlider.vue
Normal file
File diff suppressed because one or more lines are too long
@@ -33,33 +33,12 @@
|
|||||||
let text = ["Fota", "轻松管理"];
|
let text = ["Fota", "轻松管理"];
|
||||||
|
|
||||||
|
|
||||||
let baseList = [
|
let baseList = [{
|
||||||
// {
|
|
||||||
// icon: "/static/index/product.png",
|
|
||||||
// path: "/pages/product/product",
|
|
||||||
// title: "产品",
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// icon: "/static/index/group.png",
|
|
||||||
// path: "/pages/group/group",
|
|
||||||
// title: "分组",
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// icon: "/static/index/version.png",
|
|
||||||
// path: "/pages/version/version",
|
|
||||||
// title: "版本",
|
|
||||||
// },
|
|
||||||
{
|
|
||||||
icon: "/static/index/equipment.png",
|
icon: "/static/index/equipment.png",
|
||||||
path: "/pages/monitor_project/index",
|
path: "/pages/monitor_project/index",
|
||||||
title: "项目监控",
|
title: "项目监控",
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
icon: "/static/index/equipment.png",
|
|
||||||
path: "/pages/equipment/equipment",
|
|
||||||
title: "设备管理",
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
icon: "scan",
|
icon: "scan",
|
||||||
@@ -83,26 +62,8 @@
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
icon: "/static/index/equipmentLog.png",
|
|
||||||
path: "/pages/statistics/statistics",
|
|
||||||
title: "销量统计",
|
|
||||||
},
|
|
||||||
// {
|
|
||||||
// icon: "/static/index/sysUp.png",
|
|
||||||
// path: "/pages/log/sysUp/sysUp",
|
|
||||||
// title: "上行日志",
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// icon: "/static/index/sysDown.png",
|
|
||||||
// path: "/pages/log/sysDown/sysDown",
|
|
||||||
// title: "下行日志",
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// icon: "/static/index/log.png",
|
|
||||||
// path: "/pages/log/sysLog/sysLog",
|
|
||||||
// title: "系统日志",
|
|
||||||
// },
|
|
||||||
];
|
];
|
||||||
|
|
||||||
function toList(item) {
|
function toList(item) {
|
||||||
|
@@ -1,90 +1,54 @@
|
|||||||
<template>
|
<template>
|
||||||
<view>
|
<view>
|
||||||
<uv-form
|
<uv-form class="form" ref="form" labelWidth="60" labelAlign="right" :model="model" :rules="rules">
|
||||||
class="form"
|
|
||||||
ref="form"
|
|
||||||
labelWidth="60"
|
|
||||||
labelAlign="right"
|
|
||||||
:model="model"
|
|
||||||
:rules="rules"
|
|
||||||
>
|
|
||||||
<uv-form-item class="hide">
|
<uv-form-item class="hide">
|
||||||
<uv-input
|
<uv-input class="hide" v-model="model.username" placeholder="请输入账号"
|
||||||
class="hide"
|
:rules="[{ required: true, message: '请填写账号' }]" />
|
||||||
v-model="model.username"
|
|
||||||
placeholder="请输入账号"
|
|
||||||
:rules="[{ required: true, message: '请填写账号' }]"
|
|
||||||
/>
|
|
||||||
</uv-form-item>
|
</uv-form-item>
|
||||||
<uv-form-item class="hide">
|
<uv-form-item class="hide">
|
||||||
<uv-input
|
<uv-input type="password" v-model="model.password" placeholder="请输入密码"
|
||||||
type="password"
|
:rules="[{ required: true, message: '请填写密码' }]" />
|
||||||
v-model="model.password"
|
|
||||||
placeholder="请输入密码"
|
|
||||||
:rules="[{ required: true, message: '请填写密码' }]"
|
|
||||||
/>
|
|
||||||
</uv-form-item>
|
</uv-form-item>
|
||||||
<uv-form-item label="账号" name="username" prop="username">
|
<uv-form-item label="账号" name="username" prop="username">
|
||||||
<uv-input
|
<uv-input v-model="model.username" placeholder="请输入账号"
|
||||||
v-model="model.username"
|
:rules="[{ required: true, message: '请填写账号' }]" />
|
||||||
placeholder="请输入账号"
|
|
||||||
:rules="[{ required: true, message: '请填写账号' }]"
|
|
||||||
/>
|
|
||||||
</uv-form-item>
|
</uv-form-item>
|
||||||
<uv-form-item label="密码" name="password" prop="password">
|
<uv-form-item label="密码" name="password" prop="password">
|
||||||
<uv-input
|
<uv-input type="password" v-model="model.password" placeholder="请输入密码"
|
||||||
type="password"
|
:rules="[{ required: true, message: '请填写密码' }]" />
|
||||||
v-model="model.password"
|
|
||||||
placeholder="请输入密码"
|
|
||||||
:rules="[{ required: true, message: '请填写密码' }]"
|
|
||||||
/>
|
|
||||||
</uv-form-item>
|
</uv-form-item>
|
||||||
|
|
||||||
<Verify
|
<Verify :mode="'pop'" :captchaType="'blockPuzzle'" ref="verifyRef"
|
||||||
@success="VerifySuccess"
|
:imgSize="{ width: '310px', height: '155px' }" @success="VerifySuccess"></Verify>
|
||||||
:mode="'pop'"
|
|
||||||
:captchaType="'blockPuzzle'"
|
|
||||||
ref="verifyRef"
|
|
||||||
:imgSize="{ width: '310px', height: '155px' }"
|
|
||||||
></Verify>
|
|
||||||
|
|
||||||
|
|
||||||
<view class="footer">
|
<view class="footer">
|
||||||
<!-- -->
|
<!-- -->
|
||||||
|
|
||||||
<wd-button class="btn" size="large" @click="VerifyShow" block
|
<wd-button class="btn" size="large" @click="VerifyShow" block>登录</wd-button>
|
||||||
>VerifyShow</wd-button
|
|
||||||
>
|
|
||||||
|
|
||||||
<wd-button class="btn" size="large" @click="handleSubmit" block
|
|
||||||
>登录</wd-button
|
|
||||||
>
|
|
||||||
</view>
|
</view>
|
||||||
</uv-form>
|
</uv-form>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import { ref, reactive } from "vue";
|
import { ref, reactive } from "vue";
|
||||||
import { v1 as uuid_v1 } from "uuid";
|
|
||||||
|
|
||||||
import Verify from "@/components/verifition/verify";
|
import Verify from "@/components/verify/verify.vue";
|
||||||
|
|
||||||
import { login } from "@/api/user.js";
|
import { login } from "@/api/user.js";
|
||||||
import { setLocalStorage } from "@/utils/storage.js";
|
import { setLocalStorage } from "@/utils/storage.js";
|
||||||
import { toast } from "@/utils/utils.js";
|
import { alert } from "@/utils/utils.js";
|
||||||
// import appicon from "@/static/appicon.png";
|
// import appicon from "@/static/appicon.png";
|
||||||
|
|
||||||
import { useUserStore } from "@/stores/user";
|
import { useUserStore } from "@/stores/user";
|
||||||
|
|
||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
|
|
||||||
|
const model = reactive({
|
||||||
const model = reactive({
|
|
||||||
username: "",
|
username: "",
|
||||||
password: "",
|
password: "",
|
||||||
});
|
});
|
||||||
const rules = {
|
const rules = {
|
||||||
username: [
|
username: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
@@ -99,19 +63,18 @@ const rules = {
|
|||||||
trigger: ["blur", "change"],
|
trigger: ["blur", "change"],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
};
|
||||||
|
const form = ref();
|
||||||
|
const verifyRef = ref();
|
||||||
|
function VerifyShow(e) {
|
||||||
|
verifyRef.value.show();
|
||||||
|
}
|
||||||
|
function VerifySuccess(e) {
|
||||||
|
console.log("VerifySuccess", e);
|
||||||
|
|
||||||
};
|
handleSubmit(e);
|
||||||
const form = ref();
|
}
|
||||||
const verifyRef=ref()
|
function handleSubmit(verify) {
|
||||||
function VerifyShow(e) {
|
|
||||||
verifyRef.value.show()
|
|
||||||
}
|
|
||||||
function VerifySuccess(e) {
|
|
||||||
console.log('VerifySuccess',e);
|
|
||||||
|
|
||||||
handleSubmit(e)
|
|
||||||
}
|
|
||||||
function handleSubmit(verify) {
|
|
||||||
form.value
|
form.value
|
||||||
.validate()
|
.validate()
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
@@ -119,7 +82,7 @@ function handleSubmit(verify) {
|
|||||||
username: model.username,
|
username: model.username,
|
||||||
password: model.password,
|
password: model.password,
|
||||||
|
|
||||||
...verify
|
...verify,
|
||||||
};
|
};
|
||||||
|
|
||||||
// userStore.getUser();
|
// userStore.getUser();
|
||||||
@@ -135,30 +98,29 @@ function handleSubmit(verify) {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
alert(res.message);
|
||||||
toast(res.message);
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
toast(err.message);
|
alert(err.message);
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
toast(err.message);
|
alert(err.message);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
.hide {
|
.hide {
|
||||||
height: 0 !important;
|
height: 0 !important;
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
|
|
||||||
border: 0 !important;
|
border: 0 !important;
|
||||||
overflow: hidden !important;
|
overflow: hidden !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.form {
|
.form {
|
||||||
margin: 200rpx 20rpx;
|
margin: 200rpx 20rpx;
|
||||||
|
|
||||||
.captchaImage {
|
.captchaImage {
|
||||||
@@ -172,5 +134,5 @@ function handleSubmit(verify) {
|
|||||||
background-color: #00b294;
|
background-color: #00b294;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
Reference in New Issue
Block a user