刚接触 vue3 ,请教大佬们一个问题,
之前 vue2 项目使用了大量 mixins 来复用代码( mixins 有点像面向对象继承的感觉,还能重写方法和变量),
现在用了 vue3,composition-api 如何实现 mixins 的功能?
mixins 里有 20 个通用变量和 10 几个通用方法,都是和业务有关的,
请问在 vue3 如何通过 composition-api 来达到 mixins 那样高效的复用,
我看了官网的例子,但在实际业务中不太方便使用,
mixins 里是可以直接操作 props ,emits ,但是在 hook 中就得传参进去,而且通用变量得挨个解构导入,
网上搜了一些,也没看到 hook 如果能代替 mixins 来实现高效复用
1
Agdhfdjh 2021-12-30 16:25:34 +08:00
mixins 是 vue react 放弃的复用方法,得换个思路去学 hook
|
2
rzWack 2021-12-30 16:44:09 +08:00 via Android
同,蹲一个大佬的解说。。
|
3
ccyu220 2021-12-30 16:58:37 +08:00
在 `useHooks()` 中使用 `getCurrentInstance` 来避免重复传参
|
4
ccyu220 2021-12-30 17:07:27 +08:00 1
```ts
import { getCurrentInstance } from 'vue'; export function useDemo() { const instance = getCurrentInstance(); const { props, emit } = instance; console.log(props); console.log(emit); } ``` |
5
ToPoGE OP 大佬,有办法获取到外部定义的响应式变量吗?
就是类似选项 API 中的 data ,methods ,watch 之类的? |
6
ToPoGE OP |