提交 cd12ed7c 编写于 作者: BeMount's avatar BeMount 💬

fix(/login.js): 登录后清空登录表单,引入jscookie与mavon-editor

上级 a2d51064
......@@ -2905,6 +2905,19 @@
"integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
"dev": true
},
"codemirror": {
"version": "5.52.2",
"resolved": "https://registry.npm.taobao.org/codemirror/download/codemirror-5.52.2.tgz?cache=0&sync_timestamp=1584691811240&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcodemirror%2Fdownload%2Fcodemirror-5.52.2.tgz",
"integrity": "sha1-wp4fcXn4XrDdF8BYb6gQ5IOP9YQ="
},
"codemirror-spell-checker": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/codemirror-spell-checker/download/codemirror-spell-checker-1.1.2.tgz",
"integrity": "sha1-HGYPkIlIPMtRE7m6nKGcP0mTNx4=",
"requires": {
"typo-js": "*"
}
},
"collection-visit": {
"version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/collection-visit/download/collection-visit-1.0.0.tgz",
......@@ -2970,8 +2983,7 @@
"commander": {
"version": "2.20.3",
"resolved": "https://registry.npm.taobao.org/commander/download/commander-2.20.3.tgz?cache=0&sync_timestamp=1584148318639&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-2.20.3.tgz",
"integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM=",
"dev": true
"integrity": "sha1-/UhehMA+tIgcIHIrpIA16FMa6zM="
},
"commondir": {
"version": "1.0.1",
......@@ -3380,6 +3392,11 @@
"integrity": "sha1-N3QZGZA7hoVl4cCep0dEXNGJg+4=",
"dev": true
},
"cssfilter": {
"version": "0.0.10",
"resolved": "https://registry.npm.taobao.org/cssfilter/download/cssfilter-0.0.10.tgz",
"integrity": "sha1-xtJnJjKi5cg+AT5oZKQs6N79IK4="
},
"cssnano": {
"version": "4.1.10",
"resolved": "https://registry.npm.taobao.org/cssnano/download/cssnano-4.1.10.tgz",
......@@ -5464,8 +5481,12 @@
"highlight.js": {
"version": "9.18.1",
"resolved": "https://registry.npm.taobao.org/highlight.js/download/highlight.js-9.18.1.tgz",
"integrity": "sha1-7SGqAB/mJSuxCj121HVzxlOf4Tw=",
"dev": true
"integrity": "sha1-7SGqAB/mJSuxCj121HVzxlOf4Tw="
},
"highlight.js-async-webpack": {
"version": "1.0.4",
"resolved": "https://registry.npm.taobao.org/highlight.js-async-webpack/download/highlight.js-async-webpack-1.0.4.tgz",
"integrity": "sha1-wGtnv5nwSQRdYrdW5YVbCRLsYWw="
},
"hmac-drbg": {
"version": "1.0.1",
......@@ -6235,6 +6256,11 @@
"resolved": "https://registry.npm.taobao.org/js-calendar/download/js-calendar-1.2.3.tgz",
"integrity": "sha1-pYOwZEtOaVujlPNE0QPbzHp6fT4="
},
"js-cookie": {
"version": "2.2.1",
"resolved": "https://registry.npm.taobao.org/js-cookie/download/js-cookie-2.2.1.tgz?cache=0&sync_timestamp=1583935354793&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-cookie%2Fdownload%2Fjs-cookie-2.2.1.tgz",
"integrity": "sha1-aeEG3F1YBolFYpAqpbrsN0Tpsrg="
},
"js-message": {
"version": "1.0.5",
"resolved": "https://registry.npm.taobao.org/js-message/download/js-message-1.0.5.tgz",
......@@ -6575,6 +6601,21 @@
"object-visit": "^1.0.0"
}
},
"marked": {
"version": "0.8.2",
"resolved": "https://registry.npm.taobao.org/marked/download/marked-0.8.2.tgz",
"integrity": "sha1-T6rSjSbt41Gnoaql/sZ5Fchp41U="
},
"mavon-editor": {
"version": "2.8.3",
"resolved": "https://registry.npm.taobao.org/mavon-editor/download/mavon-editor-2.8.3.tgz",
"integrity": "sha1-zrr6jCbJRAFCjRX3ob08lv9lMC4=",
"requires": {
"highlight.js": "^9.11.0",
"highlight.js-async-webpack": "^1.0.4",
"xss": "^1.0.6"
}
},
"md5.js": {
"version": "1.3.5",
"resolved": "https://registry.npm.taobao.org/md5.js/download/md5.js-1.3.5.tgz",
......@@ -9074,6 +9115,16 @@
}
}
},
"simplemde": {
"version": "1.11.2",
"resolved": "https://registry.npm.taobao.org/simplemde/download/simplemde-1.11.2.tgz",
"integrity": "sha1-ojo12XjSxA7wfewAjJLwcNjggOM=",
"requires": {
"codemirror": "*",
"codemirror-spell-checker": "*",
"marked": "*"
}
},
"slash": {
"version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/slash/download/slash-1.0.0.tgz",
......@@ -10013,6 +10064,11 @@
"integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
"dev": true
},
"typo-js": {
"version": "1.1.0",
"resolved": "https://registry.npm.taobao.org/typo-js/download/typo-js-1.1.0.tgz",
"integrity": "sha1-pan1kry0U2Zr9wyWlNpYcF0CXtg="
},
"uglify-js": {
"version": "3.4.10",
"resolved": "https://registry.npm.taobao.org/uglify-js/download/uglify-js-3.4.10.tgz?cache=0&sync_timestamp=1585357516255&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuglify-js%2Fdownload%2Fuglify-js-3.4.10.tgz",
......@@ -10896,6 +10952,15 @@
"async-limiter": "~1.0.0"
}
},
"xss": {
"version": "1.0.6",
"resolved": "https://registry.npm.taobao.org/xss/download/xss-1.0.6.tgz",
"integrity": "sha1-6vEen8R2464omUShAJ793YoSS1E=",
"requires": {
"commander": "^2.9.0",
"cssfilter": "0.0.10"
}
},
"xtend": {
"version": "4.0.2",
"resolved": "https://registry.npm.taobao.org/xtend/download/xtend-4.0.2.tgz",
......
......@@ -7,7 +7,12 @@
"build": "vue-cli-service build"
},
"dependencies": {
"axios": "^0.19.2",
"core-js": "^3.6.4",
"js-cookie": "^2.2.1",
"mavon-editor": "^2.8.3",
"simplemde": "^1.11.2",
"view-design": "^4.1.3",
"vue": "^2.6.11",
"vue-router": "^3.1.6",
"vuex": "^3.1.3"
......
import Cookie from 'js-cookie';
//登录
export const login = vm =>{
export const login = (vm, name) =>{
vm.$axios.request({
url:'/login/signIn',
data:{
......@@ -14,7 +15,11 @@ export const login = vm =>{
vm.isShowlogDialog = false;
vm.isLogedIn = false;
vm.$Message.success('登录成功');
window.console.log(res.data.jwt);
Cookie.set({
name: 'userName',
value: vm.formData.user
});
vm.$refs[name].resetFields();
localStorage.setItem('jwt',res.data.jwt);
}
}).catch(err=>{
......@@ -24,7 +29,7 @@ export const login = vm =>{
//注册
export const addUsers = vm =>{
export const addUsers = (vm, name) =>{
vm.$axios.request({
url:'/login/addUser',
data:{
......@@ -35,11 +40,13 @@ export const addUsers = vm =>{
}).then(res=>{
if(res.data.result){
vm.$Message.success('新增用户成功');
vm.$refs[name].resetFields();
}else{
vm.$Message.warning(res.data.message);
}
}).catch(err=>{
window.console.log(err);
console.log(err);
})
}
......
......@@ -3,12 +3,16 @@ import App from './App.vue'
import router from './router'
import store from './store'
import ViewUI from 'view-design';
import mavonEditor from 'mavon-editor'
import 'mavon-editor/dist/css/index.css'
// use
import 'view-design/dist/styles/iview.css';
import axios from 'axios';
import {appRouters} from '@/router/router'
Vue.use(ViewUI);
Vue.use(mavonEditor)
Vue.prototype.$axios = axios.create({
baseURL:"http://localhost:30000"
......
......@@ -27,6 +27,20 @@ export const appRouters = [
component: aboutWriter => import('@/views/about-writer/aboutWriter')
}
]
},
{
path:'/markdown-editor',
name:'markdownEditor',
title:'富文本编辑',
component:Home,
children:[
{
path:'index',
name:'markdowEditorIndex',
component: markdownEidtor => import('@/views/markdown-editor/markdown-editor')
}
]
}
]
......
.margin-top-8{
margin-top: 8px;
}
.margin-top-10{
margin-top: 10px;
}
.margin-top-20{
margin-top: 20px;
}
.margin-left-10{
margin-left: 10px;
}
.margin-bottom-10{
margin-bottom: 10px;
}
.margin-bottom-100{
margin-bottom: 100px;
}
.margin-right-10{
margin-right: 10px;
}
.padding-left-6{
padding-left: 6px;
}
.padding-left-8{
padding-left: 5px;
}
.padding-left-10{
padding-left: 10px;
}
.padding-left-20{
padding-left: 20px;
}
.height-100{
height: 100%;
}
.height-120px{
height: 100px;
}
.height-200px{
height: 200px;
}
.height-492px{
height: 492px;
}
.height-460px{
height: 460px;
}
.line-gray{
height: 0;
border-bottom: 2px solid #dcdcdc;
}
.notwrap{
word-break:keep-all;
white-space:nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.padding-left-5{
padding-left: 10px;
}
[v-cloak]{
display: none;
}
\ No newline at end of file
因为 它太大了无法显示 source diff 。你可以改为 查看blob
.demo-spin-icon-load{
animation: ani-demo-spin 1s linear infinite;
}
@keyframes ani-demo-spin {
from { transform: rotate(0deg);}
50% { transform: rotate(180deg);}
to { transform: rotate(360deg);}
}
\ No newline at end of file
......@@ -16,7 +16,7 @@
<div v-else>
<Dropdown @on-click="handleRouterRedirect">
<a href="javascript:void(0)">
BeMount
{{userName}}
<Icon type="ios-arrow-down"></Icon>
</a>
<DropdownMenu slot="list" >
......@@ -53,6 +53,7 @@
<script>
import * as loginRequest from '../apis/login'
import Cookie from 'js-cookie'
import {appRouters} from '@/router/router.js'
import menuComponent from '@/components/menu-component/menuComponent.vue';
import {mapState} from 'vuex';
......@@ -89,23 +90,29 @@ export default {
menuList: state => {
return state.app.menuList;
}
})
}),
userName(){
return Cookie.get('userName');
}
},
methods:{
// 注册表单处理
handleSignUp(name){
this.$refs[name].validate((valid) => {
if (valid) {
loginRequest.addUsers(this);
loginRequest.addUsers(this, name);
} else {
this.$Message.error('Fail!');
}
})
},
// 点击登录注册
login(){
this.$refs['formData'].resetFields();
this.isShowlogDialog = true;
},
//个人中心退出登录处理
handleRouterRedirect(name){
if(name == 'personalCenter'){
if(localStorage.getItem('jwt') ){
......@@ -113,12 +120,16 @@ export default {
}else{
this.$Message.info("请先登录");
}
}else{
localStorage.removeItem('jwt');
Cookie.delete('userName');
}
},
// 登录表单处理
handleSubmit(name){
this.$refs[name].validate((valid) => {
if (valid) {
loginRequest.login(this);
loginRequest.login(this, name);
} else {
this.$Message.error('Fail!');
}
......@@ -148,7 +159,8 @@ export default {
}
.content{
height:calc(~"100vh - 50px");
height: calc(~"100vh - 50px");
width: calc( ~"100wh-200px");
background-color: aliceblue;
}
......
.aboutWriter{
width:100%;
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items:center;
.ivu-row{
width:100%;
margin-top:20px;
// height:300px;
}
}
\ No newline at end of file
<template>
<div>
aboutWriter
<div class="aboutWriter">
<span style="font-size:26px;font-weight:bold;">关于博客</span>
<Row>
<Col span="20" offset='2'>
<Card>
<p slot="title">博客介绍</p>
<p style="text-indent: 2em;">博客介绍</p>
</Card>
</Col>
</Row>
<Row>
<Col span="20" offset='2'>
<Card>
<p slot="title">个人介绍</p>
<p style="text-indent: 2em;">个人介绍</p>
</Card>
</Col>
</Row>
<Row>
<Col span="20" offset='2'>
<Card >
<p slot="title">联系作者</p>
<p style="text-indent: 2em;">联系作者</p>
</Card>
</Col>
</Row>
</div>
</template>
<script>
export default {
data(){
return {
}
},
methods:{
}
}
</script>
......
.margin-top-20{
margin-top:20px;
}
\ No newline at end of file
<style lang="less" scoped>
@import './markdown-editor.less';
</style>
<template>
<div>
<Row class="margin-top-20">
<Col span="24" >
<mavon-editor v-model="value"/>
</Col>
</Row>
</div>
</template>
<script>
export default {
name: 'markdown-editor',
data(){
return{
value:''
}
}
};
</script>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册