Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
W
web-monitor
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
web-monitor
Commits
25a4be5a
Commit
25a4be5a
authored
7 years ago
by
Pan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
user username to login
parent
b44c7384
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
92 additions
and
78 deletions
+92
-78
login.js
src/api/login.js
+2
-2
user.js
src/store/modules/user.js
+2
-2
validate.js
src/utils/validate.js
+3
-4
index.vue
src/views/login/index.vue
+85
-70
No files found.
src/api/login.js
View file @
25a4be5a
import
fetch
from
'@/utils/fetch'
export
function
login
(
email
,
password
)
{
export
function
login
(
username
,
password
)
{
return
fetch
({
url
:
'/user/login'
,
method
:
'post'
,
data
:
{
email
,
username
,
password
}
})
...
...
This diff is collapsed.
Click to expand it.
src/store/modules/user.js
View file @
25a4be5a
...
...
@@ -27,9 +27,9 @@ const user = {
actions
:
{
// 登录
Login
({
commit
},
userInfo
)
{
const
email
=
userInfo
.
email
.
trim
()
const
username
=
userInfo
.
username
.
trim
()
return
new
Promise
((
resolve
,
reject
)
=>
{
login
(
email
,
userInfo
.
password
).
then
(
response
=>
{
login
(
username
,
userInfo
.
password
).
then
(
response
=>
{
const
data
=
response
.
data
setToken
(
data
.
token
)
commit
(
'SET_TOKEN'
,
data
.
token
)
...
...
This diff is collapsed.
Click to expand it.
src/utils/validate.js
View file @
25a4be5a
...
...
@@ -2,10 +2,9 @@
* Created by jiachenpan on 16/11/18.
*/
/* 是否是公司邮箱*/
export
function
isWscnEmail
(
str
)
{
const
reg
=
/^
[
a-z0-9
](?:[
-_.+
]?[
a-z0-9
]
+
)
*@wallstreetcn
\.
com$/i
return
reg
.
test
(
str
.
trim
())
export
function
isvalidUsername
(
str
)
{
const
valid_map
=
[
'admin'
,
'editor'
]
return
valid_map
.
indexOf
(
str
.
trim
())
>=
0
}
/* 合法uri*/
...
...
This diff is collapsed.
Click to expand it.
src/views/login/index.vue
View file @
25a4be5a
...
...
@@ -3,11 +3,11 @@
<el-form
autoComplete=
"on"
:model=
"loginForm"
:rules=
"loginRules"
ref=
"loginForm"
label-position=
"left"
label-width=
"0px"
class=
"card-box login-form"
>
<h3
class=
"title"
>
系统登录
</h3>
<el-form-item
prop=
"email
"
>
<span
class=
"svg-container"
>
<icon-svg
icon-class=
"
email"
></icon-svg
>
<el-form-item
prop=
"username
"
>
<span
class=
"svg-container
svg-container_login
"
>
<icon-svg
icon-class=
"
yonghuming"
/
>
</span>
<el-input
name=
"
email"
type=
"text"
v-model=
"loginForm.email"
autoComplete=
"on"
placeholder=
"邮箱"
></el-input
>
<el-input
name=
"
username"
type=
"text"
v-model=
"loginForm.username"
autoComplete=
"on"
placeholder=
"邮箱"
/
>
</el-form-item>
<el-form-item
prop=
"password"
>
<span
class=
"svg-container"
>
...
...
@@ -21,21 +21,21 @@
登录
</el-button>
</el-form-item>
<div
class=
'tips'
>
admin账号为:admin@wallstreetcn.com
密码随便填
</div>
<div
class=
'tips'
>
editor账号:editor@wallstreetcn.com
密码随便填
</div>
<div
class=
'tips'
>
账号:admin
密码随便填
</div>
<div
class=
'tips'
>
账号:editor
密码随便填
</div>
</el-form>
</div>
</
template
>
<
script
>
import
{
is
WscnEmail
}
from
'@/utils/validate'
import
{
is
validUsername
}
from
'@/utils/validate'
export
default
{
name
:
'login'
,
data
()
{
const
validate
Email
=
(
rule
,
value
,
callback
)
=>
{
if
(
!
is
WscnEmail
(
value
))
{
callback
(
new
Error
(
'请输入正确的
合法邮箱
'
))
const
validate
Username
=
(
rule
,
value
,
callback
)
=>
{
if
(
!
is
validUsername
(
value
))
{
callback
(
new
Error
(
'请输入正确的
用户名
'
))
}
else
{
callback
()
}
...
...
@@ -49,16 +49,12 @@ export default {
}
return
{
loginForm
:
{
email
:
'admin@wallstreetcn.com
'
,
username
:
'admin
'
,
password
:
'111111'
},
loginRules
:
{
email
:
[
{
required
:
true
,
trigger
:
'blur'
,
validator
:
validateEmail
}
],
password
:
[
{
required
:
true
,
trigger
:
'blur'
,
validator
:
validatePass
}
]
username
:
[{
required
:
true
,
trigger
:
'blur'
,
validator
:
validateUsername
}],
password
:
[{
required
:
true
,
trigger
:
'blur'
,
validator
:
validatePass
}]
},
loading
:
false
}
...
...
@@ -85,63 +81,82 @@ export default {
</
script
>
<
style
rel=
"stylesheet/scss"
lang=
"scss"
>
@import
"src/styles/mixin.scss"
;
@import
"src/styles/mixin.scss"
;
$bg
:
#2d3a4b
;
$dark_gray
:
#889aa4
;
$light_gray
:
#eee
;
.login-container
{
@include
relative
;
height
:
100vh
;
background-color
:
$bg
;
input
:
-
webkit-autofill
{
-webkit-box-shadow
:
0
0
0px
1000px
#293444
inset
!
important
;
-webkit-text-fill-color
:
#fff
!
important
;
}
input
{
background
:
transparent
;
border
:
0px
;
-webkit-appearance
:
none
;
border-radius
:
0px
;
padding
:
12px
5px
12px
15px
;
color
:
$light_gray
;
height
:
47px
;
}
.el-input
{
display
:
inline-block
;
height
:
47px
;
width
:
85%
;
}
.tips
{
font-size
:
14px
;
color
:
#fff
;
margin-bottom
:
5
px
;
margin-bottom
:
10
px
;
}
.login-container
{
@include
relative
;
height
:
100vh
;
background-color
:
#2d3a4b
;
input
:
-
webkit-autofill
{
-webkit-box-shadow
:
0
0
0px
1000px
#293444
inset
!
important
;
-webkit-text-fill-color
:
#fff
!
important
;
}
input
{
background
:
transparent
;
border
:
0px
;
-webkit-appearance
:
none
;
border-radius
:
0px
;
padding
:
12px
5px
12px
15px
;
color
:
#eeeeee
;
height
:
47px
;
}
.el-input
{
display
:
inline-block
;
height
:
47px
;
width
:
85%
;
}
.svg-container
{
padding
:
6px
5px
6px
15px
;
color
:
#889aa4
;
}
.title
{
font-size
:
26px
;
font-weight
:
400
;
color
:
#eeeeee
;
margin
:
0px
auto
40px
auto
;
text-align
:
center
;
font-weight
:
bold
;
}
.login-form
{
position
:
absolute
;
left
:
0
;
right
:
0
;
width
:
400px
;
padding
:
35px
35px
15px
35px
;
margin
:
120px
auto
;
}
.el-form-item
{
border
:
1px
solid
rgba
(
255
,
255
,
255
,
0
.1
);
background
:
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
5px
;
color
:
#454545
;
}
.forget-pwd
{
color
:
#fff
;
.svg-container
{
padding
:
6px
5px
6px
15px
;
color
:
$dark_gray
;
vertical-align
:
middle
;
width
:
30px
;
display
:
inline-block
;
&
_login
{
font-size
:
20px
;
}
}
.title
{
font-size
:
26px
;
font-weight
:
400
;
color
:
$light_gray
;
margin
:
0px
auto
40px
auto
;
text-align
:
center
;
font-weight
:
bold
;
}
.login-form
{
position
:
absolute
;
left
:
0
;
right
:
0
;
width
:
400px
;
padding
:
35px
35px
15px
35px
;
margin
:
120px
auto
;
}
.el-form-item
{
border
:
1px
solid
rgba
(
255
,
255
,
255
,
0
.1
);
background
:
rgba
(
0
,
0
,
0
,
0
.1
);
border-radius
:
5px
;
color
:
#454545
;
}
.show-pwd
{
position
:
absolute
;
right
:
10px
;
top
:
7px
;
font-size
:
16px
;
color
:
$dark_gray
;
cursor
:
pointer
;
}
.thirdparty-button
{
position
:
absolute
;
right
:
35px
;
bottom
:
28px
;
}
}
</
style
>
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment