我的项目是由Vue js开发的,并且它的存储是由javascript开发的,并且我集成了由vue-typescript开发的新组件,并且该组件中的所有脚本都是由typescript开发的。
要导入状态变量,我尝试了两种方法
使用Vuex
import { mapGetters, mapState, mapActions, mapMutations, createNamespacedHelpers } from 'vuex'
@Component({
computed: {
...mapState([
'allowedUrls'
])
}
})
此案例this.allowedUrls
未定义错误
使用Vuex-Class
import { State } from 'vuex-class'
@State allowedUrls: string[]
在这种情况下,this.allowedUrls
始终未定义
如何解决此问题?
答案 0 :(得分:0)
不能完全确定您的代码有什么问题,但是我以略有不同的方式执行相同的操作,并且可以正常工作:
import { mapState } from 'vuex';
import RootState from '@/store/rootState';
@Component({
computed: mapState({
userFullName: (state: RootState) => state.user.fullName,
userEmail: (state: RootState) => state.user.email
})
})
RooState
是我的vuex状态类。我正在使用vue 2.5.17和vuex 3.0.1。