当前位置:首页 > uni-app

uniapp组件

2026-03-04 18:47:16uni-app

uniapp 组件的基本概念

uniapp 的组件是基于 Vue.js 的单文件组件(.vue 文件),支持跨平台开发。组件分为内置组件(如 viewbutton)和自定义组件,可通过标签直接调用。

内置组件的使用

uniapp 提供了一系列跨平台的内置组件,例如:

  • view:类似 HTML 的 div,用于布局容器。
  • text:文本组件,支持嵌套和样式继承。
  • button:按钮组件,开放能力如微信登录、分享等。

示例代码:

<view class="container">
  <text>Hello uniapp</text>
  <button @click="handleClick">点击</button>
</view>

自定义组件的创建与使用

  1. 创建组件
    components 目录下新建 .vue 文件,例如 MyComponent.vue

    uniapp组件

    <template>
      <view>
        <text>{{ message }}</text>
      </view>
    </template>
    <script>
    export default {
      props: {
        message: String
      }
    }
    </script>
  2. 注册组件
    在页面中通过 import 引入并注册:

    <template>
      <view>
        <my-component message="自定义组件"></my-component>
      </view>
    </template>
    <script>
    import MyComponent from '@/components/MyComponent.vue'
    export default {
      components: { MyComponent }
    }
    </script>

组件的生命周期

uniapp 组件遵循 Vue 的生命周期,常用钩子包括:

  • created:组件实例刚创建,未挂载 DOM。
  • mounted:DOM 挂载完成,可操作节点。
  • updated:数据更新导致 DOM 重新渲染。

组件间的通信

  1. 父传子:通过 props 传递数据。

    uniapp组件

    <child-component :title="parentTitle"></child-component>
  2. 子传父:通过 $emit 触发父组件事件。

    // 子组件
    this.$emit('update', newValue)
    // 父组件
    <child-component @update="handleUpdate"></child-component>
  3. 全局状态管理:使用 Vuexuni.$on/uni.$emit 跨组件通信。

条件编译与平台适配

通过注释实现不同平台的代码适配:

<!-- #ifdef H5 -->
<view>仅H5平台显示</view>
<!-- #endif -->

注意事项

  • 组件样式默认隔离,可通过 options 配置 styleIsolation 修改。
  • 避免频繁更新组件数据,优化性能可使用 v-once 或虚拟列表。
  • 跨平台组件需测试各端兼容性,必要时使用条件编译。

标签: 组件uniapp
分享给朋友:

相关文章

uniapp请求超时处理

uniapp请求超时处理

uniapp请求超时处理方法 在uniapp中处理请求超时可以通过多种方式实现,以下是几种常见的处理策略: 设置全局请求超时时间 在main.js中配置全局请求超时时间,适用于所有请求: uni…

uniapp中如何引用echarts

uniapp中如何引用echarts

在uniapp中引用echarts uniapp中引用echarts可以通过原生方式或第三方插件实现,以下是具体方法: 使用原生echarts 安装echarts依赖 在项目根目录下执行命令:…

海康 uniapp

海康 uniapp

海康威视与UniApp集成方案 海康威视的硬件设备(如摄像头、NVR等)与UniApp结合,通常需要通过海康的开放平台API或SDK实现功能调用。以下是具体实现方法: 获取海康威视开放平台权限 注册…

vue轮播组件实现

vue轮播组件实现

vue轮播组件实现方法 使用第三方库(如Swiper) 安装Swiper库: npm install swiper 在Vue组件中引入: <template> <div cl…

react组件如何通讯

react组件如何通讯

React 组件通讯方式 React 组件间的通讯方式主要包括以下几种方法,适用于不同场景下的数据传递和状态管理需求。 父子组件通讯(Props 传递) 父组件通过 props 向子组件传递数据或回…

房产uniapp

房产uniapp

房产类UniApp开发指南 UniApp作为跨平台开发框架,适用于快速构建房产类应用(如二手房交易、租房平台、新房展示等)。以下是关键开发要点和实现方法: 技术选型与框架配置 跨平台适配:使用Uni…