无论递归组件,还是自定义组件,每个组件都有唯一的_uid
在 api.js中对接口 指定封装
example:
api_get(url, data = {}) {
if (window.isAndroid) {
let query = ""
if (Object.keys(data).length > 0) {
Object.keys(data).forEach((v, i) => {
let str = "&"
if (i == 0) {
str = "?"
}
query += `${str}${v}=${data[v]}`
})
}
APP类.get(url + query)
}
if (window.isiOS) {
window.webkit.messageHandlers. APP类.postMessage({
method: "function",
url: url,
reqType: "get",
param: JSON.stringify(data)
})
}
},
api_post(url, data) {
if (window.isAndroid) {
APP.post(url, JSON.stringify(data))
}
if (window.isiOS) {
window.webkit.messageHandlers. APP.postMessage({
method: "function",
url: url,
reqType: "post",
param: JSON.stringify(data)
})
}
},
getNetReq(res) {
for (var k in window.getNetMethod) {
window.getNetMethod[k](res)
}
}
在main中 挂载
Vue.prototype.api_get = api.api_get
Vue.prototype.api_post = api.api_post
window.getNetReq = api.getNetReq
在组件中使用
每个组件都有唯一的_uid
在
methods:{
getNetReq(res) {}
switch (res.interface) {
case "api/aaa/bbb":
if (res.code == 0) {
}
break
}
},
mounted() {
window.getNetMethod[this._uid] = this.getNetReq
},
destroyed() {
delete window.getNetMethod[this._uid]
},