no message
This commit is contained in:
parent
e29e0e36b9
commit
1abc53b06d
2
dist/index.html
vendored
2
dist/index.html
vendored
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,122 +1,149 @@
|
|||||||
import Vue from 'vue'
|
import Vue from "vue"
|
||||||
import Vuex from 'vuex'
|
import Vuex from "vuex"
|
||||||
|
|
||||||
Vue.use(Vuex)
|
Vue.use(Vuex)
|
||||||
|
|
||||||
export default new Vuex.Store({
|
export default new Vuex.Store({
|
||||||
state: {
|
state: {
|
||||||
historicalSearch: [], // 历史数据
|
historicalSearch: [], // 历史数据
|
||||||
allForumList: [], // 全部板块数据
|
allForumList: [], // 全部板块数据
|
||||||
homeRequestState: false, // 首页推荐和收藏接口的数据请求状态 这个是是否需要发送请求,因为用户点击收藏后需要重新获取
|
homeRequestState: false, // 首页推荐和收藏接口的数据请求状态 这个是是否需要发送请求,因为用户点击收藏后需要重新获取
|
||||||
getUserInfoState: false, // 这个是是否在请求状态
|
getUserInfoState: false, // 这个是是否在请求状态
|
||||||
favoriteList: [], // 收藏板块 数据
|
favoriteList: [], // 收藏板块 数据
|
||||||
recommendList: [], // 推荐板块数据
|
recommendList: [], // 推荐板块数据
|
||||||
menu: [],
|
menu: [],
|
||||||
user: {}, // 用户信息
|
user: {}, // 用户信息
|
||||||
hotSearchkeywords: [], // 热门搜索
|
hotSearchkeywords: [], // 热门搜索
|
||||||
loading: null,
|
loading: null,
|
||||||
},
|
},
|
||||||
getters: {
|
getters: {},
|
||||||
},
|
|
||||||
|
|
||||||
mutations: {
|
mutations: {
|
||||||
setHistoricalSearch(state, payload) {
|
setHistoricalSearch(state, payload) {
|
||||||
if (!Array.isArray(payload)) payload = [payload]
|
if (!Array.isArray(payload)) payload = [payload]
|
||||||
let targetArr = [...new Set([...payload, ...state.historicalSearch])]
|
let targetArr = [...new Set([...payload, ...state.historicalSearch])]
|
||||||
if (targetArr.length > 10) targetArr = targetArr.slice(0, 10)
|
if (targetArr.length > 10) targetArr = targetArr.slice(0, 10)
|
||||||
|
|
||||||
state.historicalSearch = targetArr
|
state.historicalSearch = targetArr
|
||||||
localStorage.setItem('historicalSearch', JSON.stringify(targetArr))
|
localStorage.setItem("historicalSearch", JSON.stringify(targetArr))
|
||||||
|
},
|
||||||
|
|
||||||
|
setAllForumList(state, payload) {
|
||||||
|
state.allForumList = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setHomeRequestState(state, payload) {
|
||||||
|
state.homeRequestState = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setFavoriteList(state, payload) {
|
||||||
|
state.favoriteList = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setRecommendList(state, payload) {
|
||||||
|
state.recommendList = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setUser(state, payload) {
|
||||||
|
state.user = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setHotSearchkeywords(state, payload) {
|
||||||
|
state.hotSearchkeywords = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setgetUserInfoState(state, payload) {
|
||||||
|
state.getUserInfoState = payload
|
||||||
|
},
|
||||||
|
|
||||||
|
setMenu(state, payload) {
|
||||||
|
state.menu = payload
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
setAllForumList(state, payload) {
|
actions: {
|
||||||
state.allForumList = payload
|
// 获取历史搜索的数据
|
||||||
|
fetchHistoricalSearch({ commit }) {
|
||||||
|
let historicalSearch = JSON.parse(localStorage.getItem("historicalSearch")) || []
|
||||||
|
commit("setHistoricalSearch", historicalSearch)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 获取当前 HOST
|
||||||
|
// const host = window.location.hostname;
|
||||||
|
|
||||||
|
// 简单的哈希函数,返回十六进制字符串
|
||||||
|
simpleHash() {
|
||||||
|
const str = window.location.hostname
|
||||||
|
let hash = 0
|
||||||
|
for (let i = 0; i < str.length; i++) {
|
||||||
|
const char = str.charCodeAt(i)
|
||||||
|
hash = (hash << 5) - hash + char
|
||||||
|
hash |= 0 // Convert to 32bit integer
|
||||||
|
}
|
||||||
|
return (hash >>> 0).toString(16) // 将哈希值转换为无符号整数,然后转换为十六进制字符串
|
||||||
|
},
|
||||||
|
|
||||||
|
// // 生成唯一值
|
||||||
|
// const uniqueValue = simpleHash(host);
|
||||||
|
// console.log(uniqueValue); // 输出基于 HOST 生成的唯一值
|
||||||
|
|
||||||
|
// 获取全部板块的数据
|
||||||
|
getAllForum({ commit }, that) {
|
||||||
|
const str = window.location.hostname
|
||||||
|
let hash = 0
|
||||||
|
for (let i = 0; i < str.length; i++) {
|
||||||
|
const char = str.charCodeAt(i)
|
||||||
|
hash = (hash << 5) - hash + char
|
||||||
|
hash |= 0 // Convert to 32bit integer
|
||||||
|
}
|
||||||
|
const strr = (hash >>> 0).toString(16) // 将哈希值转换为无符号整数,然后转换为十六进制字符串
|
||||||
|
|
||||||
|
that.$http
|
||||||
|
.get("/api/home/allForum?" + strr)
|
||||||
|
.then(res => {
|
||||||
|
if (res.code != 200) return
|
||||||
|
let allForumList = res.data
|
||||||
|
commit("setAllForumList", allForumList)
|
||||||
|
})
|
||||||
|
.catch(err => {
|
||||||
|
that.$message.error(err.message)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
// 获取用户信息 获取收藏信息那些数据
|
||||||
|
getUserInfo({ state, commit }, that) {
|
||||||
|
if (state.getUserInfoState) return
|
||||||
|
commit("setgetUserInfoState", true)
|
||||||
|
that.$http
|
||||||
|
.post("/api/home")
|
||||||
|
.then(res => {
|
||||||
|
if (res.code != 200) return
|
||||||
|
let data = res.data
|
||||||
|
let { config, favorite, hotSearchkeywords, recommend, user, menu } = data
|
||||||
|
|
||||||
|
commit("setHomeRequestState", true)
|
||||||
|
commit("setUser", user)
|
||||||
|
commit("setFavoriteList", favorite)
|
||||||
|
commit("setRecommendList", recommend)
|
||||||
|
commit("setHotSearchkeywords", hotSearchkeywords)
|
||||||
|
commit("setMenu", menu)
|
||||||
|
|
||||||
|
if (that.userInfo) {
|
||||||
|
// 这个是顶部用户数据的 这样不用监听是否请求成功
|
||||||
|
that.userInfo = user
|
||||||
|
that.islogin = user.uid > 0 ? true : false
|
||||||
|
that.hotSearchkeywords = hotSearchkeywords
|
||||||
|
that.menu = menu
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(err => {
|
||||||
|
that.$message.error(err.message)
|
||||||
|
})
|
||||||
|
.finally(() => {
|
||||||
|
// that.$closeUnderLoading(that)
|
||||||
|
commit("setgetUserInfoState", false)
|
||||||
|
})
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
modules: {},
|
||||||
setHomeRequestState(state, payload) {
|
|
||||||
state.homeRequestState = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setFavoriteList(state, payload) {
|
|
||||||
state.favoriteList = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setRecommendList(state, payload) {
|
|
||||||
state.recommendList = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setUser(state, payload) {
|
|
||||||
state.user = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setHotSearchkeywords(state, payload) {
|
|
||||||
state.hotSearchkeywords = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setgetUserInfoState(state, payload) {
|
|
||||||
state.getUserInfoState = payload
|
|
||||||
},
|
|
||||||
|
|
||||||
setMenu(state, payload) {
|
|
||||||
state.menu = payload
|
|
||||||
}
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
actions: {
|
|
||||||
// 获取历史搜索的数据
|
|
||||||
fetchHistoricalSearch({ commit }) {
|
|
||||||
let historicalSearch = JSON.parse(localStorage.getItem('historicalSearch')) || []
|
|
||||||
commit('setHistoricalSearch', historicalSearch)
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取全部板块的数据
|
|
||||||
getAllForum({ commit }, that) {
|
|
||||||
that.$http.get("/api/home/allForum?type=forum").then(res => {
|
|
||||||
if (res.code != 200) return;
|
|
||||||
let allForumList = res.data
|
|
||||||
commit('setAllForumList', allForumList)
|
|
||||||
}).catch(err => {
|
|
||||||
that.$message.error(err.message)
|
|
||||||
})
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
// 获取用户信息 获取收藏信息那些数据
|
|
||||||
getUserInfo({ state, commit }, that) {
|
|
||||||
if (state.getUserInfoState) return
|
|
||||||
commit('setgetUserInfoState', true)
|
|
||||||
that.$http.post("/api/home").then(res => {
|
|
||||||
if (res.code != 200) return;
|
|
||||||
let data = res.data
|
|
||||||
let { config, favorite, hotSearchkeywords, recommend, user, menu } = data
|
|
||||||
|
|
||||||
commit('setHomeRequestState', true)
|
|
||||||
commit('setUser', user)
|
|
||||||
commit('setFavoriteList', favorite)
|
|
||||||
commit('setRecommendList', recommend)
|
|
||||||
commit('setHotSearchkeywords', hotSearchkeywords)
|
|
||||||
commit('setMenu', menu)
|
|
||||||
|
|
||||||
if (that.userInfo) { // 这个是顶部用户数据的 这样不用监听是否请求成功
|
|
||||||
that.userInfo = user
|
|
||||||
that.islogin = user.uid > 0 ? true : false;
|
|
||||||
that.hotSearchkeywords = hotSearchkeywords
|
|
||||||
that.menu = menu
|
|
||||||
}
|
|
||||||
|
|
||||||
}).catch(err => {
|
|
||||||
that.$message.error(err.message)
|
|
||||||
}).finally(() => {
|
|
||||||
// that.$closeUnderLoading(that)
|
|
||||||
commit('setgetUserInfoState', false)
|
|
||||||
})
|
|
||||||
},
|
|
||||||
|
|
||||||
|
|
||||||
},
|
|
||||||
modules: {
|
|
||||||
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user