47 lines
1.1 KiB
JavaScript
47 lines
1.1 KiB
JavaScript
const { DEFAULT_API_BASE_URL, getApiBaseUrl, setApiBaseUrl } = require('../../utils/constants')
|
|
|
|
Page({
|
|
data: {
|
|
apiBaseUrl: '',
|
|
defaultApiBaseUrl: DEFAULT_API_BASE_URL,
|
|
saving: false
|
|
},
|
|
|
|
onShow() {
|
|
this.setData({ apiBaseUrl: getApiBaseUrl() })
|
|
},
|
|
|
|
handleInput(e) {
|
|
this.setData({ apiBaseUrl: e.detail.value })
|
|
},
|
|
|
|
useDefault() {
|
|
this.setData({ apiBaseUrl: DEFAULT_API_BASE_URL })
|
|
},
|
|
|
|
save() {
|
|
const apiBaseUrl = (this.data.apiBaseUrl || '').trim()
|
|
if (!apiBaseUrl) {
|
|
wx.showToast({ title: '请输入接口地址', icon: 'none' })
|
|
return
|
|
}
|
|
|
|
if (!/^https?:\/\//.test(apiBaseUrl)) {
|
|
wx.showToast({ title: '地址需以 http 或 https 开头', icon: 'none' })
|
|
return
|
|
}
|
|
|
|
this.setData({ saving: true })
|
|
setApiBaseUrl(apiBaseUrl)
|
|
const app = getApp()
|
|
if (app && app.globalData) {
|
|
app.globalData.baseUrl = apiBaseUrl
|
|
}
|
|
wx.showToast({ title: '保存成功', icon: 'success' })
|
|
setTimeout(() => {
|
|
this.setData({ saving: false })
|
|
wx.navigateBack({ delta: 1 })
|
|
}, 600)
|
|
}
|
|
})
|