Vue設置全局變量以及Vuex值當頁面刷新時數據清空

        Vue設置全局變量以及Vuex值當頁面刷新時數據清空

一、src/api文件夾下新建globalVariable.js文件

// 題庫id
const questionBankId = '';
// 題庫名稱
const questionBankTitle = '';
// 定義普通章節id或者模考章節部分id
const charpterIdx = '';
// 題庫類型,0:普通題庫,1:模考題庫
const questionType = '';
// 章節名稱
const charpterNamex = '';

//用export default 暴露出去,供其他vue文件使用
export default {
	questionBankId:'',
	questionBankTitle: '',
	charpterIdx:'',
	questionType:'',
	charpterNamex:'',
	
	// 設置屬性方法
	setQuestionBankId(questionBankId){
		this.questionBankId = questionBankId;
	},
	setQuestionBankTitle(questionBankTitle){
		this.questionBankTitle = questionBankTitle;
	},
	setCharpterIdx(charpterIdx){
		this.charpterIdx = charpterIdx;
	},
	setQuestionType(questionType){
		this.questionType = questionType;
	},
	setCharpterNamex(charpterNamex){
		this.charpterNamex = charpterNamex;
	},
}

二、vue頁面賦值和使用全局變量

1、先引入全局配置文件globalVariable.js
import globalVariable from '@/api/globalVariable'
2、使用globalVariable賦值全局變量以及獲取全局變量值

// 獲取值
mounted(){
	let that = this;
	that.questionTypes = globalVariable.questionType;
	that.charpterIds = globalVariable.charpterIdx;
	that.charpterNames = globalVariable.charpterNamex;
	that.initQuestion();
},

// 賦值
// 修改全局變量值
globalVariable.setCharpterIdx(id);
globalVariable.setQuestionType('1');
globalVariable.setCharpterNamex(title);
that.$router.push({path: '/questionList'})

三、文件路徑

 

四、使用場景

1、配置並讀取文件信息

介紹:在使用vue中我們需要將所有的接口進行統一的配置在摸個具體文件夾中,這樣即使後臺接口地址修改我們能夠很方便的修改接口Api,不用再到具體vue文件中進行查找,浪費時間。

接口調用直接先引入該文件,然後直接調用即可。

2、路由參數存儲

介紹:我們在進行vue路由時需要傳遞一些參數,有時候我們不想把參數暴露在URL地址欄中,我們可以通過全局配置文件進行動態傳參。

注意:該項目全局變量還是針對於具體某個瀏覽器,不會像後臺全局變量一樣所有用戶都會共享,所有放心使用。

注意事項:在使用路由傳參的時候,如果頁面刷新當前頁面獲取的全局變量信息也就消失了,注意使用。

五、使用vuex進行數據傳遞

vuex介紹:其中包括變量定義、賦值、取值。

博客地址:

https://baijiahao.baidu.com/s?id=1618794879569468435&wfr=spider&for=pc

https://segmentfault.com/a/1190000015782272

總結:在使用vuex的時候也會存在頁面刷新數據消失問題。

問題描述以及解決方法:

博客地址:

https://blog.csdn.net/qq_42209411/article/details/85218244

https://blog.csdn.net/guzhao593/article/details/81435342

歸納總結:使用sessionStorage進行數據存儲比較合理。

sessionStorage:針對一個 session 的數據存儲(關閉窗口,存儲的數據清空)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章