vuex结合vue-cookies的使用
2024-09-08 04:15:11
一、创建vuex
import Vue from 'vue'
import Vuex from 'vuex'
import cookie from "vue-cookies" Vue.use(Vuex) export default new Vuex.Store({
state: {
//从cookie中取
username: cookie.get("name"),
token: cookie.get("token"),
date:cookie.get("date") },
mutations: {
savetoken: function (state, data) {
//赋值
// console.log(data);
state.username = data.name;
state.token = data.token;
//写入cookie
cookie.set("name", data.name);
cookie.set("token", data.token);
},
cleartoken: function () {
cookie.set("name", "");
cookie.set("token", "")
}, savedate:function (state,date) {
console.log(date)
state.date=date;
cookie.set("date",date)
},
cleardate:function () {
cookie.set("date","")
}, },
actions: {}
})
二、组件中使用
<script> export default {
name: 'login',
data: function () {
return {
form: {
name: '',
pwd: '',
date1: '',
repwd: '',
} }
},
methods: {
login: function () {
var _this = this.form;
this.$ajax.request({
url: _this.$url + "login/",
method: "post",
data: {name: _this.name, pwd: _this.pwd}
}).then(function (res) {
console.log(res.data);
if (res.data.status == 100) {
_this.$store.commit("savetoken", res.data)
}
else {
alert(res.data.msg)
}
})
},
savedata: function () {
var _this = this; if (_this.form.date1) {
_this.$store.commit("savedate", _this.form.date1)
}
}
}, mounted() {
var _this = this;
if (_this.$store.state.date) {
_this.form.date1 = _this.$store.state.date
_this.$store.commit("cleardate")
}
} } </script>
<template>
<div class="course">
<h1>登入页面</h1>
<el-form label-width="100px"
class="col-lg-4 col-lg-offset-4">
<el-form-item label="用户名">
<el-input v-model="form.name"></el-input>
</el-form-item>
<el-form-item label="密码">
<el-input type="password" v-model="form.pwd"></el-input>
</el-form-item> <el-form-item>
<h4 v-if="!form.pwd&&!form.name" style="color: red;">请输入用户名和密码:</h4>
</el-form-item> <el-date-picker type="date" placeholder="选择日期" v-model="form.date1" style="width: 100%;"
@input="savedata"></el-date-picker> <el-form-item>
<a href="/course">
<el-button type="primary" @click="login">提交</el-button>
</a>
</el-form-item> </el-form> </div>
</template>
最新文章
- mysql 创建存储过程报错
- CentOS6.3 编译安装LAMP(4):编译安装 PHP5.2.17
- puma vs passenger vs rainbows! vs unicorn vs thin 适用场景 及 performance
- C语言指针学习(续)
- python os用法笔记
- Android 开源项目分类汇总(转)
- 实际例子描述和分析“猎豹抢票跨站推荐功能有票刷不到”的疑似bug
- 如何彻底隐藏iOS7应用的status bar
- commons-io源码阅读心得
- 后缀自动机(SAM)
- 正确的lnamp支持SSI的方法!即支持SHTML和include调用!
- Swift - 后台获取数据(Background Fetch)的实现
- MySQL如何修改root密码
- json数据格式在IE浏览器中报错问题
- linux 生成随机密码和wordlist常用方法
- android:activity活动的生命周期
- 解决windows 10英文版操作系统中VS2017控制台程序打印中文乱码问题
- 20165320 实验一 java环境的熟悉
- 20165233 实验二 Java面向对象程序设计
- C++ map练习