1、Vue2生命周期写法在vue3环境 onLoad() { 可以打印this {"userName": "",} } onHide: () => { console.log("onHide",this.formData) onHide, undefined }, 能用,但是函数中的this不能识别,会打印:TypeError: globalThis.XXX is not a function
2、vuex store的引入 首先一定注意 userInfo: lifeData.userInfo ? lifeData.userInfo : {}, ok ,默认值为‘’不行,使用了ts后过不了会报错,表现是存不上 建议直接使用vue3的写法,并封装函数挂到uni.$u上,方便直接调用,永久化保存用的uniapp自带的
//案例为存储userInfo对象
vue2
import store from '@/store/index.js'
userInfo['user']=params.userName
userInfo['pass']=params.password
store.commit('$uStore',{
name: 'userInfo',value: userInfo
})
或者
import { useStore } from "vuex"
data定义store:null
onLoad中给store赋值,使其全局使用
this.store = useStore()
this.store.commit('$uStore',{
name: 'userInfo',
value: {
user:this.formData.userName,
pass:this.formData.password
}
})
vue3页面标准写法
import { useStore } from "vuex"
userInfo['user']=params.userName
userInfo['pass']=params.password
store.commit('$uStore',{
name: 'userInfo', value: userInfo
})
3、使用uView的变化 原来是this.u.XX 即便源代码是vue2,且能跑通,到了vue3的项目统统要改