【uni-app】自定义组件和通信

(1)自定义组件概念

组件是 vue 技术中非常重要的部分,组件使得与ui相关的轮子可以方便的制造和共享,进而使得vue使用者的开发效率大幅提升,在项目的component目录下存放组件,uni-app 只支持 vue 单文件组件(.vue 组件)

组件可以使用「全局注册」和「页面引入」两种方式进行使用,使用分为三步:

导入 import xxx from 'xxx'

注册 Vue.use('xx',xx) components:{ xxx }

使用 <xx />

(2)父子组件通信

  1. 父组件通过自定义属性向子组件传递数据
  2. 子组件通过 props 接收父组件传递的数
  3. 父组件通过自定义事件标签向子组件传递事件
  4. 子组件通过触发父组件定义事件方式修改父组件数据

(3)slot 数据分发与作用域插槽

  1. 父组件通过调用子组件内部嵌套 html 内容作为slot分发给子组件
  2. 子组件通过在 slot 标签上添加属性,向父组件通信数据,作用域插槽

(4)全局事件定义及通信

  1. 在整个应用的任何地方均可以使用uni.$on创建一个全局事件
  2. 在整个应用的任何地方也均可以使用 uni.$emit 来触发全局事件,实现多组件见的数据通信
相关推荐
coding随想8 分钟前
JavaScript中的迭代器模式:优雅遍历数据的“设计之道”
javascript
咖啡の猫35 分钟前
JavaScript基础-DOM事件流
开发语言·javascript·microsoft
李三岁_foucsli2 小时前
从生成器和协程的角度详解async和await,图文解析
前端·javascript
星垂野2 小时前
JavaScript 原型及原型链:深入解析核心机制
javascript·面试
zayyo2 小时前
面试官问我,后端一次性返回十万条数据,前端应该怎么处理 ?
前端·javascript·面试
xingba2 小时前
改造jsp项目的alert框和confirm框
前端·javascript·css
Elastic 中国社区官方博客2 小时前
JavaScript 中的 ES|QL:利用 Apache Arrow 工具
大数据·开发语言·javascript·elasticsearch·搜索引擎·全文检索·apache
꒰ঌ小武໒꒱3 小时前
用 HTML、CSS 和 JavaScript 实现五子棋人机对战游戏
javascript·css·html
outstanding木槿3 小时前
浅拷贝 与 深拷贝
前端·javascript
ningmengjing_3 小时前
js调试技巧
开发语言·javascript·ecmascript