uni-app组件概述

这篇具有很好参考价值的文章主要介绍了uni-app组件概述。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、组件

1.1、组件的含义

  • 组件是视图层的基本组成单元。

  • 组件是一个单独且可复用的功能模块的封装。

组件,包括:以组件名称为标记的开始标签和结束标签、组件内容、组件属性、组件属性值。

  • <component-name>是开始标签,</component-name>是结束标签

  • 开始标签和结束标签之间,称为组件内容。如下面的content;

  • 开始标签上可以写属性,属性可以有多个,多个属性之间用空格分割。如下面示例的property1property2

  • 每个属性通过=赋值。如下面的示例中,属性property1的值被设为字符串value

所有组件与属性名都是小写,单词之间以连字符-连接。

<component-name property1="value" property2="value">
    content
</component-name>

如下的例子:

<template>
    <view>
        <button size="mini">按钮</button>
    </view>
</template>

按照Vue单组件的要求,每个vue文件的根节点必须为 <template>,且这个 <template> 下只能且必须有一个根 <view> 组件。

组件属性有多种类型:BooleanNumberStringArrayObjectAnyEventHandler(事件处理,譬如:点击事件、焦点事件等)

<template>
    <view>
    <--! :disabled的值设置为布尔值,hover-start-time的值设置为Number -->
        <button size="mini" :disabled="false" hover-start-time=20 >按钮</button>
    </view>
</template>

公共属性

每个组件都拥有这些属性,仅限于uniapp

属性名 类型 描述 解释
id String 组件的唯一标识 一般用于获取组件的上下文对象,需要保持整个页面的唯一
ref String Vue组件中的唯一标识 用来给子组件注册引用信息
class String 组件的类名 通常用于设置样式
style String 内联样式 动态设置内联样式
hidden bool 组件是否隐藏 默认为显示,设为false为隐藏
data-* Any 自定义属性 组件上触发事件时,会发送给事件处理函数
@* EventHandler 组件的事件

除了上述公共属性,还有一类特殊属性以v-开头,称之为vue指令,如v-if、v-else、v-for、v-model。

在组件中使用JavaScript变量,和Vue中定义的data数据相似。

<template>
    <view>
        <button size="mini" :disabled="buttondisble" hover-start-time=20 >{{buttonText}}</button>
    </view>
</template>
<script>
    export default {
        data() {
            return {
                "buttonText":"点我送神龙刀",
                "buttondisble":false
            }
        }
    }
</script>
​

组件的事件

每个组件都有事件,事件就是在进行某些操作时触发的某个方法。

比如button组件的点击事件,在点击按钮时,会触发。

事件作为组件的属性,用@开头。

<template>
    <view>
        <button size="mini" @click="clickbtn('按钮被点了一下')">按钮</button>
    </view>
</template>
<script>
    export default {
        methods: {
            clickbtn(msg) {
                console.log("点击按钮得到的消息是:" + msg)
            }
        }
    }
</script>

1.2、基础组件

基础组件指的是uniapp内置的组件,无须定义,可以直接加载。

uniapp的基础组件和HTML标签类似,但是却不相同,与微信小程序相同,可以更好的满足移动端的体验。

虽然不推荐使用HTML标签,但实际上如果开发者写了div等标签,在编译到非H5平台时也会被编译器转换为view标签,类似的还有spantextanavigator等,包括css里的元素选择器也会转。但为了管理方便、策略统一,新写代码时仍然建议使用view等组件。

可以通过组合这些基础组件进行快速开发。在需要复用的情况下可封装成扩展组件

基础组件规范,与小程序规范相近。但是要注意组件上的事件绑定,需要以 vue 的事件绑定语法来绑定,如 bindchange="eventName" 事件,需要写成 @change="eventName"

<picker mode="date" :value="date" start="2015-09-01" end="2020-09-01" @change="bindDateChange">
    <view class="picker">
        当前选择: {{date}}
    </view>
</picker>

1.3、基础组件分类

1.3.1、视图容器

组件名 说明
view 视图容器,类似于HTML中的div
scroll-view 可滚动视图容器
swiper 滑块视图容器,比如用于轮播banner
match-media 屏幕动态适配组件,比如窄屏上不显示某些内容
movable-area 可拖动区域
movable-view 可移动的视图容器,在页面中可以拖拽滑动或双指缩放。movable-view必须在movable-area组件中
cover-view 可覆盖在原生组件的上的文本组件
cover-image 可覆盖在原生组件的上的图片组件

1.3.2、基础内容容器

组件名 说明
icon 图标
text 文字
rich-text 富文本显示组件
progress 进度条

1.3.3、表单组件

标签名 说明
button 按钮
checkbox 多选框
editor 富文本输入框
form 表单
input 文本输入框
label 标签
picker 弹出式列表选择器
picker-view 窗体内嵌式列表选择器
radio 单选框
slider 滑动选择器
switch 开关
textarea 多行文本输入框

1.3.4、路由与页面跳转

组件名 说明
navigator 页面链接。类似于HTML中的a标签

1.3.5、媒体组件

组件名 说明
audio 声音
camera 相机
image 图片
video 视频
live-player 直播播放
live-pusher 实时音视频录制,也称直播推流

1.3.6、地图

组件名 说明
map 地图

1.3.7、画布

组件名 说明
canvas 画布

1.3.8、webview

组件名 说明
web-view web浏览器组件

1.3.9、广告

组件名 说明
ad 广告组件
ad-draw 沉浸视频流广告组件

1.3.10、页面属性配置

组件名 说明
custom-tab-bar 底部tabbar自定义组件
navigation-bar 页面顶部导航
page-meta 页面属性配置节点

1.3.11、uniCloud

组件名 说明
unicloud-db组件 uniCloud数据库访问和操作组件

1.4、扩展组件

虽然所有的业务需求都可以通过基础组件来实现,但是有时候使用基础组件来实现某个功能是比较低效的。所以会有开发者封装各种功能的组件,用于提高开发效率。这类组件被称为扩展组件。一般在插件市场我们可以找到很多开发者开发的插件,用于实现各类功能。

比如:我们需要一个五角星点击评分的组件,在DCloud的插件市场里可以获取到:uni-rate 评分 - DCloud 插件市场

把这个uni-rate组件导入到你的uni-app项目下,在需要的vue页面里引用它,就可以在指定的地方显示出这个五角星组件。

<!-- 在index.vue页面引用 uni-rate 组件-->
<template>
      <view>
            <uni-rate></uni-rate><!-- 这里会显示一个五角星,并且点击后会自动亮星 -->
      </view>
</template>
    

封装组件的好处多多,

  1. 可以进行组件复用,就像我们定义了一个共用方法一样。

  2. 代码更方便管理,扩展性更好

  3. 提高开发效率,避免重复造轮子。方便测试。文章来源地址https://www.toymoban.com/news/detail-469798.html

到了这里,关于uni-app组件概述的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uni-app表单组件

    common-form.vue actionList.vue comImage.vue number.vue

    2024年02月16日
    浏览(48)
  • 《uni-app》表单组件-Checkbox组件

    本文分享的checkbox组件为uni-app的内置组件checkbox,非扩展组件,两者在用法上其实大同小异,只是扩展组件的属性以及事件更多…没有本质上的区别~ Checkbox,复选框,图形化界面基础组件之一,常用于复选多个选项时的业务场景,如问卷调查业务场景中的多项选择题等; 基

    2024年02月03日
    浏览(56)
  • uni-app的组件(一)

    scroll-view 可滚动视图区域。用于区域滚动 属性说明(查看更多属性请查看官网 [swiper | uni-app官网 (dcloud.net.cn)](https://uniapp.dcloud.net.cn/component/swiper.html) ) 属性名 类型 默认值 说明 scroll-y Boolean false 允许纵向滚动 scroll-top Number/String 设置竖向滚动条位置 @scroll EventHandle 滚动时触

    2024年01月16日
    浏览(49)
  • uni-app的组件(二)

    多项选择器checkbox-group 多项选择器,内部由多个 checkbox 组成。 属性说明(查看更多属性请查看官网 [swiper | uni-app官网 (dcloud.net.cn)](https://uniapp.dcloud.net.cn/component/swiper.html) ) 属性名 类型 默认值 说明 checked Boolean false 当前是否选中,可用来设置默认选中 disabled Boolean false 是否

    2024年01月18日
    浏览(46)
  • uni-app如何使用组件

    使用组件是uni-app的常见操作之一。以下是使用组件的步骤: 在uni-app项目中创建组件。 可以通过在components文件夹中创建一个.vue文件来创建组件。 也可以通过在HBuilderX中使用模板或向导来创建组件。 在需要使用组件的页面或组件中引入组件。 可以使用import导入组件,例如:

    2024年02月13日
    浏览(46)
  • uni-app tabbar组件

    锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni-app简介、第2讲 uni-app环境搭建、第3讲 uni-app之HelloWorld实现等,

    2024年02月04日
    浏览(51)
  • uni-app扩展组件(uni-ui)

    目录 数字角标(uni-badge) 代码示例: 面包屑(uni-breadcrumb) 代码示例: 日历 代码示例 卡片(uni-card) 代码示例 倒计时(uni-countdown) 更多内容请访问官网 数字角标一般和其它控件(列表、9宫格等)配合使用,用于进行数量提示,默认为实心灰色背景。 使用方式是在HBuilder中创建项目

    2024年02月15日
    浏览(60)
  • uni-app引入地图map组件--APP开发

    需求场景:使用uni-app地图组件,实现APP开发 开发环境:Mac,HbuildX3.4.14 测试环境:iOS真机调试 一、流程 1、关于Uini-app的map组件:官方文档说明。map组件是原生组件,目前只针对原生APP开发,因此通过app-nvue实现,同时选择的地图服务商只能是高德地图。 2、创建高德地图应用

    2024年02月15日
    浏览(66)
  • 【uni-app】通过uni-app基础组件picker实现选择日期、时间的功能示例(完整代码+图文)

    一、获取日期(基础) 二、获取日期和时间(改进)  

    2024年02月11日
    浏览(60)
  • 《uni-app》表单组件-Button按钮

    本文分享的button组件为uni-app的内置组件button,非扩展组件,两者在用法上其实大同小异,只是扩展组件的属性更多…没有本质上的区别~ Button,按钮,图形化界面基础组件之一,常用于响应用户的点击事件、触发业务逻辑操作时使用; 按钮基础用法如下: 在基础用法下,

    2024年02月02日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包