JHipster生成的Vue项目中beforeRouteEnter内的vm变量在哪里定义?
vm变量来源说明
vm不是你需要在main.ts或者其他位置手动定义的变量,它是vue-router导航守卫的内置传参:
beforeRouteEnter是vue-router提供的组件内专属导航守卫,触发时机早于组件实例创建,守卫内部无法直接用this访问组件实例- 当你给
next()方法传入一个回调函数时,vue-router会在组件实例创建完成后自动执行这个回调,并且把创建好的当前组件实例对象作为参数传入这个回调,代码里的vm就是这个参数的形参名,你换成任意合法变量名都可以正常运行 - 你代码中调用的
vm.retrieveAppUser、vm.initRelationships就是你在AppUserUpdate类中定义的实例方法,和你在组件其他生命周期里用this调用的效果完全一致
内容的提问来源于stack exchange,提问作者crowne
相关产品推荐
相关产品推荐

