这是我小程序的接口js文件,我想在这个文件里面获取小程序的实例,是不是获取不到呢?
小程序全局对象里面有个id,需要在接口文档里面展示,但是我这样写会给我报错。请问是不是外部js文件里面获取不到小程序实例呢?如果获取不到的话,我还得一个个的改接口,,要麻烦死!啊啊啊啊啊 谁来救救我
可以的,但前提是你这个js文件在你执行App()之后执行。
你可以换种写法。api.js里不要getApp()。
api.js里export一个方法,然后app.js里import这个方法。确保app.globaData.id存在后再调用这个方法,把值传进去。
举例:
const apiCfg = {
baseUrl: ‘https://xxx.com/api’,
}
export function setApiCfg(cfg){
Object.assign(apiCfg, cfg)
}
function getOpenid(xxx){
return apiCfg.baseUrl + `/user/openid?id=${apiCfg.baseID}`
}
import {setApiCfg} from ‘./api.js’
App({
globalData:{
id: 123
},
onLaunch(){
setApiCfg({
baseID: this.globalData.id
})
},
})