computed 单独导入到ts文件章使用,控制台会出现警告

来源:1-2 【讨论题】是什么驱动你来学习Vue3的

乔刻力

2022-05-04

ts
import { computed } from 'vue'
const store = useStore()
const language = computed(() => store.getters['AppModule/language'] as any)

老师你好 单独这段代码放在ts文件中使用 控制台会提示,要把他放入到setup中,
请问下 如何断在ts文中使用计算数学
因为我得再ts文件中获得 store中的值,
直接获得 vite热重载的话,会出错,用计算属性获得 项目正常,但控制台会出错

runtime-core.esm-bundler.js:38

   [Vue warn]: inject() can only be used inside setup() or functional components.
写回答

1回答

Jokcy

2022-05-06

这里报错的原因是useStore,这是一个hook,它里面使用了inject,你需要在组件树中的上层使用provide才行,inject api也只能在vue的组件中使用,所以你不应该直接在非组件环境中使用useStore.

0
0

Vue3.0+TS打造企业级组件库 前端中高级开发者必修课

深度匹配高级前端工程师用人需求 打造属于你自己的开源项目

1310 学习 · 250 问题

查看课程