Vite 使用inject/provide

简介: Vite 使用inject/provide

父级组件

<template>
<div>
    <div   @click="changeVlaue()"> 点击改变</div>
    
</div>
</template>
import {
  reactive,
  provide,
  ref
} from 'vue'
 setup() {
    const type= ref("business"); //加上响应式,加上后父组件改变此值所有子组件的值都会跟着变
    //const type= "business"; //不加响应式,父组件调用了changeVlaue改变值后,子组件不会跟着一起改变
    //const type= reactive({type:"business"}); //另一种响应式,用哪种都行,只是取值的方式不一样
    provide('AssetsType', type)
    const methods = {
     changeVlaue: () => {
        type.value='我改变了'
      },
    }
    return {
      ...toRefs(methods),
      type
    }
 
}

子组件

<template>
<div>
    <div> {{AssetsType}}</div>
    <div> {{test}}</div>
</div>
</template>
import {
  reactive,
  inject,
} from 'vue'
 
setup() {
    //用法一
     const test = inject('AssetsType')
    //用法二
    const state: any = reactive({
      AssetsType:inject('AssetsType')
    })
return {
      ...toRefs(state),
      test
    }
 
}


相关文章
|
6天前
|
JavaScript
Vue中的provide和inject适用于哪些场景?
Vue中的provide和inject适用于哪些场景?
52 0
|
6天前
|
JavaScript 开发者
Vue中provide和inject的作用是什么?
Vue中provide和inject的作用是什么?
28 0
|
6天前
|
JavaScript
Vue中的provide和inject的使用场景是什么?
Vue中的provide和inject的使用场景是什么?
34 3
|
4天前
|
设计模式 JavaScript API
Vue.js的provide/inject API实现了依赖注入
【5月更文挑战第17天】Vue.js的provide/inject API实现了依赖注入,允许父组件向深层子组件传递依赖,降低耦合,提高代码可维护性和测试性。通过provide选项提供依赖,如`provide: {foo: &#39;foo&#39;, bar: this.bar}`,子组件通过inject选项接收,如`inject: [&#39;foo&#39;, &#39;bar&#39;]`。适用于跨组件共享数据、插件开发和高阶组件。然而,应谨慎使用以防止过度复杂化代码结构。
13 0
|
6天前
|
设计模式 JavaScript API
依赖注入:使用provide/inject在Vue中管理依赖
【4月更文挑战第23天】Vue.js的依赖注入设计模式通过provide/inject API减少组件耦合,提高代码可维护性和测试性。provide选项在父组件中定义要共享的属性,inject则在子组件中接收这些属性。依赖注入适用于跨组件数据共享、插件开发和高阶组件。然而,应谨慎使用以保持代码清晰。
|
6天前
|
JavaScript
vue3的警告问题 [Vue warn]: inject() can only be used inside setup() or functional components. 怎么解决?
vue3的警告问题 [Vue warn]: inject() can only be used inside setup() or functional components. 怎么解决?
84 5
|
6天前
|
JavaScript
VUE组件: Vue中的provide和inject是用来做什么的?
VUE组件: Vue中的provide和inject是用来做什么的?
35 0
|
8月前
|
JavaScript API
vue组件通讯之provide / inject
vue组件通讯之provide / inject
29 0
|
9月前
provide和inject的使用
provide和inject的使用
|
11月前
【Vue3 第十八章】依赖注入 Provide/Inject
【Vue3 第十八章】依赖注入 Provide/Inject
32 0