import Vue from 'vue'
|
import Vuex from 'vuex'
|
|
//引入vuex插件 进行状态管理
|
Vue.use(Vuex)
|
|
// 定义服务器预设配置
|
const serverPresets = [
|
{
|
name: '内网',
|
url: 'http://192.168.1.22:10055/api'
|
},
|
{
|
name: '外网',
|
url: 'http://36.26.21.214:10055/api'
|
},
|
{
|
name: '本地调试',
|
url: 'http://localhost:5184/api'
|
}
|
// 可以根据需要添加更多预设
|
];
|
|
// 从本地存储获取已保存的服务器地址,如果没有则使用预设中的第一个(内网)
|
const getSavedServerAPI = () => {
|
try {
|
const savedAPI = uni.getStorageSync('server_api_address');
|
return savedAPI || serverPresets[0].url; // 默认返回内网地址
|
} catch (e) {
|
return serverPresets[0].url; // 默认返回内网地址
|
}
|
};
|
|
const store = new Vuex.Store({
|
state: {
|
id: 'id',
|
serverInfo:{//服务信息
|
networkFlag:'内网',
|
serverURLInt:'http://192.168.11.251:10055',//服务器体检 10.0.1.104:10054
|
serverURL:'http://localhost:10055',//本地调试地址
|
//serverAPI:'http://localhost:5184/api',//当前正在使用的服务器,默认为外网 localhost
|
serverAPI: getSavedServerAPI(),//当前正在使用的服务器,从本地存储获取或使用默认值
|
ftpServer:'ftp://36.26.21.214',//FTP服务器地址
|
|
// 服务器预设配置,包括显示名称和完整API地址
|
serverPresets: serverPresets
|
}
|
},
|
mutations: {
|
test(state,id){
|
state.id = id;
|
},
|
// 更新服务器API地址
|
updateServerAPI(state, url) {
|
state.serverInfo.serverAPI = url;
|
// 将更新后的地址保存到本地存储
|
try {
|
uni.setStorageSync('server_api_address', url);
|
} catch (e) {
|
console.error('保存服务器地址失败:', e);
|
}
|
},
|
// 添加自定义服务器预设
|
addServerPreset(state, preset) {
|
// 检查是否已存在相同URL的预设
|
const exists = state.serverInfo.serverPresets.some(item => item.url === preset.url);
|
if (!exists) {
|
state.serverInfo.serverPresets.push(preset);
|
}
|
}
|
},
|
getters:{
|
currentColor(state){
|
return state.colorList[state.colorIndex]
|
}
|
},
|
actions: {
|
// lazy loading openid
|
}
|
})
|
|
export default store
|