提交 76fe4074 authored 作者: 王鹏飞's avatar 王鹏飞

chore: 新增登录模块

上级 275486a9
<template>
<div class="wrapper">
<section class="main">
<div class="main-box">
<div class="logo">
<a href="https://cbu-plus.ezijing.com">
<img src="https://webapp-pub.ezijing.com/project/cbu-plus/logo.png" height="50px" />
</a>
</div>
<router-view></router-view>
</div>
<language-switch />
</section>
</div>
</template>
<script>
import languageSwitch from '@/components/languageSwitch.vue'
export default {
components: { languageSwitch }
}
</script>
<style lang="scss" scoped>
.wrapper {
display: flex;
min-height: 100vh;
align-items: center;
justify-content: center;
// background: url(https://logincdn.msauth.net/shared/1.0/content/images/backgrounds/2_bc3d32a696895f78c19df6c717586a5d.svg);
background-size: cover;
}
.main-box {
width: 450px;
min-height: 500px;
padding: 48px 40px 36px;
margin: 0 auto;
background-color: #fff;
border-radius: 8px;
border: 1px solid #dadce0;
box-sizing: border-box;
color: #bb4767;
}
.logo {
text-align: center;
padding-bottom: 16px;
}
.footer {
padding: 20px 10px;
.t1 {
text-align: right;
color: #d3d3d3;
}
}
::v-deep .title {
font-weight: normal;
text-align: center;
font-size: 20px;
color: #353535;
margin-bottom: 24px;
}
@media (max-width: 768px) {
.wrapper {
display: block;
}
.main {
padding: 20px;
}
.main-box {
width: 100%;
min-height: calc(100vh - 100px);
border: 0;
padding: 0;
}
}
::v-deep .language-switch {
margin: 10px 0;
width: 80px;
.el-input__inner {
border: none;
padding-left: 0;
}
.el-select .el-input .el-select__caret {
color: #606266;
}
}
</style>
<template>
<div class="login">
<h1 class="title">{{ $t('main.title') }}</h1>
<div class="login-box">
<router-view @success="handleSuccess"></router-view>
</div>
<p class="footer" @click="$router.push({ path: '../register', query: $route.query })">{{ $t('login.register') }}</p>
</div>
</template>
<script>
export default {
methods: {
handleSuccess() {
window.location.href = document.referrer
}
}
}
</script>
<style lang="scss" scoped>
.footer {
margin-top: 30px;
clear: both;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="password">
<h1 class="title">{{ $t('password.title') }}</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="register">
<h1 class="title">注册</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="wrapper">
<section class="main">
<div class="main-box">
<div class="logo">
<a href="https://marywood-plus.ezijing.com">
<img src="https://webapp-pub.oss-cn-beijing.aliyuncs.com/project/marywood/marywood_logo.svg" height="50px" />
</a>
</div>
<router-view></router-view>
</div>
<language-switch />
</section>
</div>
</template>
<script>
import languageSwitch from '@/components/languageSwitch.vue'
export default {
components: { languageSwitch }
}
</script>
<style lang="scss" scoped>
.wrapper {
display: flex;
min-height: 100vh;
align-items: center;
justify-content: center;
// background: url(https://logincdn.msauth.net/shared/1.0/content/images/backgrounds/2_bc3d32a696895f78c19df6c717586a5d.svg);
background-size: cover;
}
.main-box {
width: 450px;
min-height: 500px;
padding: 48px 40px 36px;
margin: 0 auto;
background-color: #fff;
border-radius: 8px;
border: 1px solid #dadce0;
box-sizing: border-box;
color: #bb4767;
}
.logo {
text-align: center;
padding-bottom: 16px;
}
.footer {
padding: 20px 10px;
.t1 {
text-align: right;
color: #d3d3d3;
}
}
::v-deep .title {
font-weight: normal;
text-align: center;
font-size: 20px;
color: #353535;
margin-bottom: 24px;
}
@media (max-width: 768px) {
.wrapper {
display: block;
}
.main {
padding: 20px;
}
.main-box {
width: 100%;
min-height: calc(100vh - 100px);
border: 0;
padding: 0;
}
}
::v-deep .language-switch {
margin: 10px 0;
width: 80px;
.el-input__inner {
border: none;
padding-left: 0;
}
.el-select .el-input .el-select__caret {
color: #606266;
}
}
</style>
<template>
<div class="login">
<h1 class="title">{{ $t('main.title') }}</h1>
<div class="login-box">
<router-view @success="handleSuccess"></router-view>
</div>
<p class="footer" @click="$router.push({ path: '../register', query: $route.query })">{{ $t('login.register') }}</p>
</div>
</template>
<script>
export default {
methods: {
handleSuccess() {
window.location.href = document.referrer
}
}
}
</script>
<style lang="scss" scoped>
.footer {
margin-top: 30px;
clear: both;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="password">
<h1 class="title">{{ $t('password.title') }}</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="register">
<h1 class="title">注册</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="wrapper">
<section class="main">
<div class="main-box">
<div class="logo">
<a href="https://sbu-plus.ezijing.com">
<img src="https://webapp-pub.ezijing.com/project/sbu-plus/logo.png" height="50px" />
</a>
</div>
<router-view></router-view>
</div>
<language-switch />
</section>
</div>
</template>
<script>
import languageSwitch from '@/components/languageSwitch.vue'
export default {
components: { languageSwitch }
}
</script>
<style lang="scss" scoped>
.wrapper {
display: flex;
min-height: 100vh;
align-items: center;
justify-content: center;
// background: url(https://logincdn.msauth.net/shared/1.0/content/images/backgrounds/2_bc3d32a696895f78c19df6c717586a5d.svg);
background-size: cover;
}
.main-box {
width: 450px;
min-height: 500px;
padding: 48px 40px 36px;
margin: 0 auto;
background-color: #fff;
border-radius: 8px;
border: 1px solid #dadce0;
box-sizing: border-box;
color: #bb4767;
}
.logo {
text-align: center;
padding-bottom: 16px;
}
.footer {
padding: 20px 10px;
.t1 {
text-align: right;
color: #d3d3d3;
}
}
::v-deep .title {
font-weight: normal;
text-align: center;
font-size: 20px;
color: #353535;
margin-bottom: 24px;
}
@media (max-width: 768px) {
.wrapper {
display: block;
}
.main {
padding: 20px;
}
.main-box {
width: 100%;
min-height: calc(100vh - 100px);
border: 0;
padding: 0;
}
}
::v-deep .language-switch {
margin: 10px 0;
width: 80px;
.el-input__inner {
border: none;
padding-left: 0;
}
.el-select .el-input .el-select__caret {
color: #606266;
}
}
</style>
<template>
<div class="login">
<h1 class="title">{{ $t('main.title') }}</h1>
<div class="login-box">
<router-view @success="handleSuccess"></router-view>
</div>
<p class="footer" @click="$router.push({ path: '../register', query: $route.query })">{{ $t('login.register') }}</p>
</div>
</template>
<script>
export default {
methods: {
handleSuccess() {
window.location.href = document.referrer
}
}
}
</script>
<style lang="scss" scoped>
.footer {
margin-top: 30px;
clear: both;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="password">
<h1 class="title">{{ $t('password.title') }}</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
<template>
<div class="register">
<h1 class="title">注册</h1>
<router-view></router-view>
<p class="back" @click="$router.push({ path: 'login', query: $route.query })">{{ $t('password.backText') }}</p>
</div>
</template>
<style lang="scss" scoped>
.back {
margin-top: 10px;
color: #bb4767;
line-height: 52px;
cursor: pointer;
}
</style>
......@@ -121,7 +121,9 @@ export default [
{
path: 'password',
component: () => import(/* webpackChunkName: "wmp" */ '../pages/wmp/password.vue'),
children: [{ path: '', component: password, props: { sendcode: { signName: 'wmp', template: 'SMS_200191908' } } }]
children: [
{ path: '', component: password, props: { sendcode: { signName: 'wmp', template: 'SMS_200191908' } } }
]
},
{
path: 'register',
......@@ -461,7 +463,8 @@ export default [
},
{
path: '/marywood-plus-huel',
component: () => import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/components/layout.vue'),
component: () =>
import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/components/layout.vue'),
children: [
{ path: '', redirect: 'login/index' },
{
......@@ -475,12 +478,92 @@ export default [
},
{
path: 'password',
component: () => import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/password.vue'),
component: () =>
import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/password.vue'),
children: [{ path: '', component: password }]
},
{
path: 'register',
component: () =>
import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/register.vue'),
children: [{ path: '', component: register }]
}
]
},
{
path: '/marywood',
component: () => import(/* webpackChunkName: "marywood" */ '../pages/marywood/components/layout.vue'),
children: [
{ path: '', redirect: 'login/index' },
{
path: 'login',
component: () => import(/* webpackChunkName: "marywood" */ '../pages/marywood/login.vue'),
children: [
{ path: '', redirect: 'index' },
{ path: 'index', component: loginAccount },
{ path: 'code', component: loginCode }
]
},
{
path: 'password',
component: () => import(/* webpackChunkName: "marywood" */ '../pages/marywood/password.vue'),
children: [{ path: '', component: password }]
},
{
path: 'register',
component: () => import(/* webpackChunkName: "marywood" */ '../pages/marywood/register.vue'),
children: [{ path: '', component: register }]
}
]
},
{
path: '/cbu-plus',
component: () => import(/* webpackChunkName: "cbu-plus" */ '../pages/cbu-plus/components/layout.vue'),
children: [
{ path: '', redirect: 'login/index' },
{
path: 'login',
component: () => import(/* webpackChunkName: "cbu-plus" */ '../pages/cbu-plus/login.vue'),
children: [
{ path: '', redirect: 'index' },
{ path: 'index', component: loginAccount },
{ path: 'code', component: loginCode }
]
},
{
path: 'password',
component: () => import(/* webpackChunkName: "cbu-plus" */ '../pages/cbu-plus/password.vue'),
children: [{ path: '', component: password }]
},
{
path: 'register',
component: () => import(/* webpackChunkName: "cbu-plus" */ '../pages/cbu-plus/register.vue'),
children: [{ path: '', component: register }]
}
]
},
{
path: '/sbu-plus',
component: () => import(/* webpackChunkName: "sbu-plus" */ '../pages/sbu-plus/components/layout.vue'),
children: [
{ path: '', redirect: 'login/index' },
{
path: 'login',
component: () => import(/* webpackChunkName: "sbu-plus" */ '../pages/sbu-plus/login.vue'),
children: [
{ path: '', redirect: 'index' },
{ path: 'index', component: loginAccount },
{ path: 'code', component: loginCode }
]
},
{
path: 'password',
component: () => import(/* webpackChunkName: "sbu-plus" */ '../pages/sbu-plus/password.vue'),
children: [{ path: '', component: password }]
},
{
path: 'register',
component: () => import(/* webpackChunkName: "marywood-plus-huel" */ '../pages/marywood-plus-huel/register.vue'),
component: () => import(/* webpackChunkName: "sbu-plus" */ '../pages/sbu-plus/register.vue'),
children: [{ path: '', component: register }]
}
]
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论