一 .Vue3 组件通讯 --- 父传孙 provide inject 方法流程 总结

1.分别创建 父亲 儿子 孙子 组件 并 import 相应引入 子 孙 组件

父组件

  <son />

import  son  from './son.vue';

儿子组件 

 <grandson />

import grandson from './grandson.vue';

孙子组件不需要引入

2.父组件引入 ref provide ,并为 ref 定义变量名 将变量名 塞入 provide内事件名位置  逗号后面是该事件名内的内容

import { provide, ref } from 'vue'

const  事件名   =   ref(100)

rovide('事件名', 该事件名内的内容)

3. 孙子组件引入 inject  并 inject 内接收事件名 然后给inject 变量, template标签内使用该变量渲染

import { inject } from 'vue'
const 变量名 = inject('事件名')
<template>
  <div> {{ 变量名 }} </div>
</template>

总结: 

provide inject 功能 :  他们可以把一个祖先组件指定的数据和方法 传递给其所有的子孙组件 

注意: Vue不会对 provide 内的变量进行响应式处理 所以 要想 inject 接受的变量是响应式的 provide提供的变量本身就必须是响应式的
 

二 .javascript里面的模块规范

commnjs --- nodejs require 导入 exports导出

描述:

我之前的项目里面采用的是dayjs 因为他比较小 但是功能和 momentjs 一模一样 我之前写了一评论模块 为了让其他人看到这个评论距离现在的时间 我使用了dayjs 的一个插件 relativeTime 返回现在到当前实例的相对时间 输出一些几秒前 1分钟以前等等 比较符合用户的产品使用的习惯 小程序 h5 用户体验一定要好 记得加 dayjs


 

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐