#Vue3:组件通信--props-emit = definEmit([‘submit‘])---子传父--mitt--v-model--provide inject--pinia--slot

v-model.number

nanoid uuid 生成唯一id

pinia菠萝

可以修改数据

countStore.sum  = 1

批量修改

contStore.$patch({

   sum:222

}) 
actions: 
 increment(value) {

  // this 代表当前的store
   }

}


storeTorefs

$subscribe订阅 —刷新不会丢失

组合式

return {}

组件通信

- props 字传父 父传子
- 自定义事件 const emit = definEmit([‘submit’])—子传父
- mitt—任意组件通信
- v-model ----可以写多少个v-model
- attrs 祖–孙 --开发者工具里面可以看到------(v-bind可以写对象)
- $refs $parent

子组件要暴露给父数据definesExoi

获取所有子组件的

func($refs) --父到子
func($parent)--子到父

注意实行

let aaa = reactive({

a: ref(0)

})

// a会自动解包
provide inject隔代祖传孙–孙传祖
// 提供
provide('名字',数据)
// 接收
inject('名字')
// 接收可以给默认值
pinia
slot
  • 默认插槽

  • 具名插槽 —名字要放在component或者template上

  • 作用域插槽—数据在子那边

内置slot传递数据----接收到数据在父组件渲染

你可能感兴趣的:(Vue3篇,vue.js)