当前位置: 首页 > news >正文

uview组件使用笔记

图标样式

修改图标的样式

  • 通过color参数修改图标的颜色
  • 通过size参数修改图标的大小,单位为rpx

效果图

<u-icon name="photo" color="#2979ff" size="28"></u-icon>

图片图标 1.3.0

这里说的图片图标,指的是小图标,起作用定位为"icon"图标作用,而非大尺寸的图片展示场景,理论上,这个小图标应该为png格式的正方形图标。

上面说到,给组件的name参数传入一个图片的名称即可显示字体图标,这些名称中不能带有/斜杠符号,否则会被认为是传入了图片图标,同时,size参数 也被设置为这个图片图标的宽度,由于是图片,诸如颜色color等参数都会失效。

<u-icon label="uView" size="40" name="https://cdn.uviewui.com/uview/example/button.png"></u-icon>

 效果图

<u-image width="100%" height="300rpx" :src="src"></u-image>

设置按钮为半圆形

shape默认值为square(按钮为圆角矩形),设置为circle,则按钮两边为半圆形

<u-button shape="square">乌啼</u-button>

设置尺寸

button组件的size(可选值为default(默认),mini(小尺寸)和medium(中等尺寸))

<u-button size="default">江湖</u-button>
<u-button size="medium">夜雨</u-button>
<u-button size="mini">十年灯</u-button>

设置点击按钮的水波纹效果

该效果通过给按钮绝对定位形式覆盖一个view,点击时改变viewscaleopacity样式属性,形成扩散再消失的水波纹效果。

<u-button :ripple="true">十年</u-button><!-- 通过rippleBgColor设置水波纹的背景颜色 -->
<u-button :ripple="true" ripple-bg-color="#909399">之约</u-button>

Tag 标签

该组件一般用于标记和选择,有如下特点:

  • mode参数可以设置3种模式,dark(深色背景)、light(浅色背景)、plain(白色背景)
  • shape参数可以设置多种形状,circle(两边半圆形), square(方形,带圆角),circleLeft(左边半圆),circleRight(右边半圆)
  • type参数可以设置5种主题,primarysuccesswarningerrorinfo

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

  • 通过type参数设置主题类型,默认为primary
  • text设置标签内容
<u-tag text="雪月夜" type="success" />

设置标签的类型

  • 通过设置mode参数,可以设置标签的类型,dark(深色背景)、light(浅色背景)、plain(白色背景)
<u-tag text="一丘之貉" mode="dark" />
<u-tag text="沆瀣一气" mode="light" />
<u-tag text="狼狈为奸" mode="plain" />

设置标签的形状

通过shape参数,可以设置标签的形状,默认是square(方形,带圆角),可选:circle(两边半圆形), circleLeft(左边半圆),circleRight(右边半圆)

<u-tag text="主谓宾" shape="circle" />
<u-tag text="定状补" shape="circleLeft" />

设置标签是否可以关闭

效果图

设置closeable参数为true,会在标签上自动添加一个关闭图标
设置可关闭后,点击关闭按钮,会发出close事件,回调中手动设置show参数为false,可以隐藏Tag

<template><u-tag text="要清楚" closeable :show="show" @close="tagClick" />
</template><script>export default {data() {return {show: true}},methods: {tagClick(index) {this.show = false;}}}
</script>

 

Input 输入框 1.3.0

效果图

此组件为一个输入框,默认没有边框和样式,是专门为配合表单组件u-form而设计的,利用它可以快速实现表单验证,输入内容,下拉选择等功能。

注意: 当您仅是需要一个输入框的话,可以考虑使用u-field组件,而如果是一个表单组,比如有多个输入框一起,且需要验证功能的时候, 应该在u-form中嵌套u-form-item,再嵌套u-input去实现。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

  • 通过v-model绑定输入框的值
  • 通过type设置输入框的类型
  • 通过border配置是否显示输入框的边框
<template><u-input v-model="value" :type="type" :border="border" />
</template><script>export default {data() {return {value: '',type: 'text',border: true}}}
</script>

日历模式

  • modedate只能选择单个日期
  • moderange可以选择日期范围

单个日期模式

选择日期后,需要点击底部的确定按钮才能触发回调事件,回调参数为一个对象,有如下属性:

{day: 4, // 选择了哪一天days: 30, // 这个月份有多少天isToday: true, // 选择的日期是否今天month: 6, // 选择的月份result: "2020-06-04", // 选择的日期整体值week: "星期四", // 选择日期所属的星期数year: 2020 , // 选择的年份
}

 

示例代码:

<template><u-calendar v-model="show" :mode="mode" @change="change"></u-calendar>
</template><script>export default {data() {return {show: true,mode: 'range'}},methods: {change(e) {console.log(e);}}}
</script>

效果图

自定义内容

效果图

组件有一个默认插槽,名为tooltip,传入的内容将会显示在键盘的顶部位置,如使用,需要为传入的内容自定义样式。

<template><u-calendar month-arrow-color="#FF55FF"year-arrow-color="#FF55FF"color="#FF55FF"active-bg-color="#FF55FF"active-color="#FF22FF"range-bg-color="#FF22FF"range-color="#FF22FF"v-model="show" :mode="mode" @change="change"><view slot="tooltip"><view class="title">请选择住店/离店时间</view></view></u-calendar>
</template><script>export default {data() {return {show: true,mode: 'range'}},methods: {change(e) {console.log(e);}}}
</script><style lang="scss" scoped>.title{color: $u-type-primary;text-align: center;padding: 20rpx 0 0 0;}
</style>

API

Props

参数说明类型默认值可选值
mode选择日期的模式,date-为单个日期,range-为选择日期范围Stringdaterange
v-model布尔值变量,用于控制日历的弹出与收起Booleanfalsetrue
safe-area-inset-bottom是否开启底部安全区适配Booleanfalsetrue
change-year是否显示顶部的切换年份方向的按钮Booleantruefalse
change-month是否显示顶部的切换月份方向的按钮Booleantruefalse
max-year可切换的最大年份Number | String2050-
min-year可切换的最小年份Number | String1950-
min-date最小可选日期Number | String1950-01-01-
max-date最大可选日期Number | String当前日期-
border-radius弹窗顶部左右两边的圆角值,单位rpxNumber | String20-
mask-close-able是否允许通过点击遮罩关闭日历Booleantruefalse
month-arrow-color月份切换按钮箭头颜色String#606266-
year-arrow-color年份切换按钮箭头颜色String#909399-
color日期字体的默认颜色String#303133-
active-bg-color起始/结束日期按钮的背景色String#2979ff-
z-index弹出时的z-indexString | Number10075-
active-color起始/结束日期按钮的字体颜色String#ffffff-
range-bg-color起始/结束日期之间的区域的背景颜色Stringrgba(41,121,255,0.13)-
range-color选择范围内字体颜色String#2979ff-
start-text起始日期底部的提示文字String开始-
end-text结束日期底部的提示文字String结束-
btn-type底部确定按钮的主题Stringprimarydefault / success / info/ warning / error
toolTip顶部提示文字,如设置名为tooltipslot,此参数将失效String选择日期-
closeable是否显示右上角的关闭图标Booleantruefalse

 select列选择器

效果图

单列模式

此方式使用较为简单,需要传入一个一维数组,数组的元素为对象,要求必须有valuelabel属性,这两个值也将会在回调中被返回。

<template><u-select v-model="show" mode="single-column" :list="list" @confirm="confirm"></u-select>
</template><script>export default {data() {return {show: true,list: [{value: '1',label: '江'},{value: '2',label: '湖'}],}},methods: {// 注意返回值为一个数组,单列时取数组的第一个元素即可(只有一个元素)confirm(e) {console.log(e);}}}
</script>

Keyboard 键盘

效果图

此为uView自定义的键盘面板,内含了数字键盘,车牌号键,身份证号键盘3种模式,都有可以打乱按键顺序的选项。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

通过mode参数定义键盘的类型,v-model绑定一个值为布尔值的变量控制键盘的弹出与收起:

  • mode = number (默认值)为数字键盘,此时顶部工具条中间的提示文字为"数字键盘"
  • mode = car 为汽车键盘,此时顶部工具条中间的提示文字为"车牌号键盘"
  • mode = card 为身份证键盘,此时顶部工具条中间的提示文字为"身份证键盘"
<template><view><u-keyboard ref="uKeyboard" mode="car" v-model="show"></u-keyboard><u-button @click="show = true">打开</u-button></view>
</template><script>export default {data() {return {show: false}}}
</script>

 

Rate 评分

该组件一般用于满意度调查,星型评分的场景。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

  • 通过count参数设置总共有多少颗星星可选择
  • 通过v-model双向绑定初始化时默认选中的星星数量 1.4.5新增
  • 通过current设置初始化时默认选中的星星数量(1.4.5后建议使用v-model的方式,此参数为了向前兼容依然有效,但优先级低于v-model)
<template><u-rate :count="count" v-model="value"></u-rate>
</template><script>export default {data() {return {count: 4,value: 2}}}
</script>

自定义样式

  • 通过active-color设置选中的星星的颜色
  • 通过inactive-color设置未选中时星星的颜色
  • 通过gutter设置星星的间距,左右内边距各占gutter的一半
<u-rate active-color="#FA3534" inactive-color="#b2b2b2" gutter="20"></u-rate>

自定义图标

  • 通过active-icon设置激活的图标
  • 通过inactive-icon设置未激活的图标
  • 通过custom-prefix设置自定义图标,详见:扩展自定义图标库
  • (opens new window)

下方示例为使用心形图标替代默认的星星图标:

<u-rate active-icon="heart-fill" inactive-icon="heart"></u-rate>

评分分级分层 1.7.2

  • 通过colors设置不同颜色区分评分层级
  • 通过icons设置不同类型图标区分评分层级
<template><view><u-rate v-model="value" :colors="colors" :icons="icons" inactive-icon="thumb-up"></u-rate></view>
</template><script>export default {data() {return {value: 2,colors: ['#ffc454', '#ffb409', '#ff9500'],icons: ['thumb-down-fill', 'thumb-down-fill', 'thumb-up-fill', 'thumb-up-fill']}}}
</script>

最少选中的数量

<u-rate :min-count="5"></u-rate>

禁用状态

禁用下,无法点击或者滑动选择,但是可以通过current设置默认选中的数量,禁用状态下用来展示分数,允许出现半星

<u-rate :current="3.7" :disabled="true"></u-rate>

API

Props

参数说明类型默认值可选值
v-model 1.4.5双向绑定选择星星的数量String | Number0-
count最多可选的星星数量String | Number5-
current默认选中的星星数量,1.4.5起建议使用v-model方式String | Number0-
disabled是否禁止用户操作Booleanfalsetrue
size星星的大小,单位rpxString | Number32-
inactive-color未选中星星的颜色String#b2b2b2-
active-color选中的星星颜色String#FA3534-
gutter星星之间的距离String | Number10-
min-count最少选中星星的个数String | Number0-
active-icon选中时的图标名,只能为uView的内置图标Stringstar-fill-
inactive-icon未选中时的图标名,只能为uView的内置图标Stringstar-
custom-prefix 1.7.2自定义字体图标库时,需要写上此值,详见:扩展自定义图标库
(opens new window)Stringuicon-
colors 1.7.2颜色分级显示,可以用不同颜色区分评分层级Array--
icons 1.7.2图标分级显示,可以用不同类型的icon区分评分层级Array--

实际应用效果图:

<template>
    <view>
        <u-keyboard ref="uKeyboard" mode="number" v-model="show"></u-keyboard>
        <u-button @click="show = true">打开</u-button>
        
        <u-rate @change="change" active-color="#FA3534" inactive-color="#b2b2b2" gutter="20"></u-rate>

    </view>
</template>

<script>
    export default {
        data() {
            return {
                show: false,
                num:''
            }
        },
        methods:{
            change(e){
                console.log(e)
            }
        }
    }
</script>

 

Events

事件名说明回调参数
change选中的星星发生变化时触发value:当前选中的星星的数量,如果使用v-model双向绑定方式,无需监听此事件

Search 搜索

 

<template>
    <view>
        <u-keyboard ref="uKeyboard" mode="number" v-model="show"></u-keyboard>
        <u-button @click="show = true">打开</u-button>
        
        <u-rate @change="change_rate" active-color="#FA3534" inactive-color="#b2b2b2" gutter="20"></u-rate>
        
        <u-search @change="change_search"
        :show-action="true" action-text="搜索"
        :animation="true"
        bg-color="#ffff7f"
        color
        ></u-search>

        
        
    </view>
</template>

<script>
    export default {
        data() {
            return {
                show: false,
                num:''
            }
        },
        methods:{
            change_rate(e){
                console.log(e)
            },
            change_search(e){
                console.log(e)
            },
        }
    }
</script>

<template>
    <view>
        <u-keyboard ref="uKeyboard" mode="number" v-model="show"></u-keyboard>
        <u-button @click="show = true">打开</u-button>
        
        <u-rate @change="change_rate" active-color="#FA3534" inactive-color="#b2b2b2" gutter="20"></u-rate>
        
        <u-search @change="change_search"
        :show-action="true" action-text="搜索"
        :animation="true"
        bg-color="#ffff7f"
        color
        ></u-search>

        
        
    </view>
</template>

<script>
    export default {
        data() {
            return {
                show: false,
                num:''
            }
        },
        methods:{
            change_rate(e){
                console.log(e)
            },
            change_search(e){
                console.log(e)
            },
        }
    }
</script>

NumberBox 步进器 

<template>
    <u-number-box v-model="value" @change="valChange"></u-number-box>
</template>

<script>
    export default {
        data() {
            return {
                value: 0
            }
        },
        methods: {
            valChange(e) {
                console.log('当前值为: ' + e.value)
            }
        }
    }
</script>

Upload 上传

该组件用于上传图片场景

<template>
    <view>
        <u-upload ref="uUpload" :action="action" :auto-upload="false" ></u-upload>
        <u-button @click="submit">提交</u-button>
    </view>
</template>

<script>
    export default {
        data() {
            return {
                // 非真实地址
                action: 'http://www.example.com/upload',
            }
        },
        methods: {
            submit() {
                this.$refs.uUpload.upload();
            },
        }
    }
</script>

 VerificationCode 验证码倒计时

 

<template>
    <view class="wrap">
        <u-toast ref="uToast"></u-toast>
        <u-verification-code :seconds="seconds" @end="end" @start="start" ref="uCode"
        @change="codeChange"></u-verification-code>
        <u-button @tap="getCode">{{tips}}</u-button>
    </view>
</template>

<script>
    export default {
        data() {
            return {
                tips: '',
                // refCode: null,
                seconds: 10,
            }
        },
        onReady() {
            // 注意这里不能将一个组件赋值给data的一个变量,否则在微信小程序会
            // 造成循环引用而报错,如果你想这样做,请在非data中定义refCode变量
            // this.refCode = this.$refs.uCode;
        },
        methods: {
            codeChange(text) {
                this.tips = text;
            },
            getCode() {
                if(this.$refs.uCode.canGetCode) {
                    // 模拟向后端请求验证码
                    uni.showLoading({
                        title: '正在获取验证码'
                    })
                    setTimeout(() => {
                        uni.hideLoading();
                        // 这里此提示会被this.start()方法中的提示覆盖
                        this.$u.toast('验证码已发送');
                        // 通知验证码组件内部开始倒计时
                        this.$refs.uCode.start();
                    }, 2000);
                } else {
                    this.$u.toast('倒计时结束后再发送');
                }
            },
            end() {
                this.$u.toast('倒计时结束');
            },
            start() {
                this.$u.toast('倒计时开始');
            }
        }
    }
</script>

<style lang="scss" scoped>
    .wrap {
        padding: 24rpx;
    }
</style>

 手机验证码需要用到阿里云的短信服务搭配以下两个组件使用:

Checkbox 复选框

 

复选框组件一般用于需要多个选择的场景,该组件功能完整,使用方便

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

  • 该组件无需强制搭配checkboxGroup组件使用(视情况而定),可以单个独立使用u-checkbox组件
  • 通过v-modelcheckbox绑定一个变量,这个绑定的变量是双向的(初始值只能是true或者false),也就是说,您可以无需监听checkbox或者checkboxGroup组件的change事件,也能知道哪个复选框 被勾选了
<template><view class=""><u-checkbox-group @change="checkboxGroupChange"><u-checkbox @change="checkboxChange" v-model="item.checked" v-for="(item, index) in list" :key="index" :name="item.name">{{item.name}}</u-checkbox></u-checkbox-group><u-button @click="checkedAll">全选</u-button></view>
</template><script>
export default {data() {return {list: [{name: 'apple',checked: false,disabled: false},{name: 'banner',checked: false,disabled: false},{name: 'orange',checked: false,disabled: false}]};},methods: {// 选中某个复选框时,由checkbox时触发checkboxChange(e) {//console.log(e);},// 选中任一checkbox时,由checkbox-group触发checkboxGroupChange(e) {// console.log(e);},// 全选checkedAll() {this.list.map(val => {val.checked = true;})}}
};
</script>

 

Radio 单选框

单选框用于有一个选择,用户只能选择其中一个的场景。

平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

基本使用

  • 该组件需要搭配radioGroup组件使用,以便用户进行操作时,获得当前单选框组的选中情况,当然,您也可以单独对某个radio进行事件监听
  • 通过v-modelradioGroup组件绑定一个变量,这个绑定的变量是双向的(初始值只能是true或者false),也就是说,您可以无需监听radio或者radioGroup组件的change事件,也能知道哪个 被勾选了

注意: 由于radio组件需要由radioGroup组件提供参数值,这些父子组件间通过Vue的"provide/inject"特性注入依赖, 所以您必须使用radioGroup包裹radio组件才能正常使用。

 

相关文章:

uview组件使用笔记

图标样式 修改图标的样式 通过color参数修改图标的颜色通过size参数修改图标的大小&#xff0c;单位为rpx 效果图 <u-icon name"photo" color"#2979ff" size"28"></u-icon>图片图标 1.3.0 这里说的图片图标&#xff0c;指的是小…...

Linux1024一篇通俗易懂的liunx命令操作总结(第十课)

Linux1024一篇通俗易懂的liunx命令操作总结(第十课) 一 liunx 介绍 Linux是一种免费开源的操作系统&#xff0c;它的设计基于Unix。它最早是由芬兰的一位大学生Linus Torvalds在1991年开始编写的&#xff0c;取名为Linux。Linux具有高度的灵活性和可定制性&#xff0c;可以在…...

nuxt使用i18n进行中英文切换

中文效果图&#xff1a; 英文效果图&#xff1a; 版本&#xff1a; 安装&#xff1a; npm install --save nuxtjs/i18n 新建en.js与zh.js两个文件进行切换显示 en.js内容 import globals from ./../js/global_valexport default {/******* 公共内容开始* *****/seeMore: &quo…...

机器人制作开源方案 | 行星探测车实现WiFi视频遥控功能

1. 功能描述 本文示例所实现的功能为&#xff1a;用手机APP&#xff0c;通过WiFi通信遥控R261样机行星探测车移动&#xff0c;以及打开、关闭行星探测车太阳翼。 2. 电子硬件 在这个示例中&#xff0c;我们采用了以下硬件&#xff0c;请大家参考&#xff1a; 主控板 Basra主控…...

Angular main 中的enableProdMode

enableProdMode一次深度解析 在Angular的开发过程中&#xff0c;我们经常会遇到一个名为enableProdMode的设置。这个设置位于Angular的主模块&#xff08;main module&#xff09;中&#xff0c;它的主要作用是启用生产模式。那么&#xff0c;什么是生产模式&#xff1f;为什么…...

驱动day2:LED灯实现三盏灯的亮灭

head.h #ifndef __HEAD_H__ #define __HEAD_H__ #define PHY_PE_MODER 0x50006000 #define PHY_PF_MODER 0x50007000 #define PHY_PE_ODR 0x50006014 #define PHY_PF_ODR 0x50007014 #define PHY_RCC 0x50000A28#endif 应用程序 #include <stdio.h> #include <sys/…...

Android 编译错误:module xxx1 missing dependencies:xxx2

编译错误log module xxx1 missing dependencies&#xff1a;xxx2 分析方向 1.缺少依赖库 添加依赖库 shared_libs: ["libhidlbase","libhidltransport","libhwbinder","liblog","libutils","libcutils",],2.缺…...

使用EasyExcel实现Excel导入导出

介绍 EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。 他能让你在不用考虑性能、内存的等因素的情况下&#xff0c;快速完成Excel的读、写等功能。 快速&#xff1a;快速的读取excel中的数据。 简洁&#xff1a;映射excel和实体类&#xff0c;让…...

京东手机销售数据:2023年9月京东手机行业TOP10品牌排行榜

鲸参谋监测的京东平台9月份手机市场销售数据已出炉&#xff01; 9月份&#xff0c;手机市场销售整体呈现下滑。鲸参谋数据显示&#xff0c;今年9月&#xff0c;京东平台手机销量为300万&#xff0c;环比下降约20%&#xff0c;同比下降约18%&#xff1b;销售额为92亿&#xff0c…...

常量字符串

一、常量字符串是什么&#xff1f; 常量字符串是一个常量&#xff0c;它的值是首字符的地址 比如 "abcdefg" 或 "123456789" 就是常量字符串 二、常量字符串与普通字符串的区别 1.常量字符串不可更改&#xff0c;而普通字符串可以更改 利用memcpy内存…...

【活体检测】“深度学习驱动的人脸反欺诈检测系统:性能提升与多模型支持“

微调小视科技开源静默活体检测模型加载方式&#xff0c;性能提升8倍 I. 引言 在当今数字化时代&#xff0c;人脸反欺诈检测在各种应用中发挥着重要作用&#xff0c;从人脸识别到金融欺诈检测。为了满足不断增长的需求&#xff0c;深度学习技术已成为关键工具&#xff0c;但性…...

Howler.js HTML5声音引擎

介绍 Howler.js是一个不错的HTML5声音引擎。功能强大&#xff0c;性能不错&#xff0c;用起来也很方便。 1. 官网 https://howlerjs.com/ GitHub https://github.com/goldfire/howler.js 2. 兼容性 Howler默认使用Web Audio&#xff0c;但在IE上可以自动转为HTML 5 Audio。这…...

centos 7.9每天定期发送最新备份文件到另外一台服务器

1.需求 在本地化部署的过程中&#xff0c;为了使系统相对来说高可用&#xff0c;一般情况下&#xff0c;我们都会做一个负载&#xff0c;但是客户又会考虑成本&#xff0c;所以只有可怜巴巴的两台服务器&#xff0c;要全部服务都做负载&#xff0c;这个就实现不了。所以只能把…...

一文全面了解:一个神奇的 react-antd-admin 动态菜单

在React v18中使用React Router v6和Ant Design (antd) v5来动态生成菜单和路由,同时使用MockJS来模拟接口请求菜单数据,可以按照以下步骤进行: 创建一个React应用: 使用Create React App或您喜欢的其他方式创建一个React应用。 安装必要的依赖: 在项目目录中运行以下命令…...

二叉树,堆排序及TopK问题

要讲二叉树的概念&#xff0c;就要先讲树的概念。 树是什么呢&#xff1f; 树其实是一种储存数据的结构&#xff0c;因为他的结构倒过来和生活中的树很相似所以才被称之为树。 这是一颗多叉树&#xff0c;从最顶端的节点可以找到下边的几个节点&#xff0c;下边的节点又可以找…...

iphone xr密码错误太多次 连接itunes

itunes下载的固件在电脑在电脑的“C&#xff1a;\Users\用户名\AppData\Roaming\Apple Computer\iTunes\iPhone Software Updates”文件夹之中。 如果你忘记了 iPhone 密码 - 官方 Apple 支持 (中国) 下载和使用 Windows 10 版 iTunes - 官方 Apple 支持 (中国) 查找手机 iClo…...

设置RabbitMQ超时时间

RabbitMQ默认的超时时间是30分钟&#xff0c;在消息消费超过30分钟后&#xff0c;rabbitMQ会发生错误&#xff0c;导致整个channel被销毁&#xff0c;无法继续消费 在RabbitMQ安装的终端执行 rabbitmqctl eval application:set_env(rabbit,consumer_timeout,180000000). 命令…...

QT计时器

widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QTimerEvent> //计时器类 #include <QTime> //时间类 QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTpublic:Widg…...

3-k8s-镜像仓库harbor搭建

文章目录 一、概念二、安装harbor三、使用harbor仓库 一、概念 官方概念&#xff1a;Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。 我们平时拉去镜像都是从线上仓库拉去&#xff0c;但是企业内部的镜像一般都不会随意传到网上&#xff0c;而是保存在自己公…...

0基础学习PyFlink——模拟Hadoop流程

学习大数据还是绕不开始祖级别的技术hadoop。我们不用了解其太多&#xff0c;只要理解其大体流程&#xff0c;然后用python代码模拟主要流程来熟悉其思想。 还是以单词统计为例&#xff0c;如果使用hadoop流程实现&#xff0c;则如下图。 为什么要搞这么复杂呢&#xff1f; 顾…...

Leetcode 3576. Transform Array to All Equal Elements

Leetcode 3576. Transform Array to All Equal Elements 1. 解题思路2. 代码实现 题目链接&#xff1a;3576. Transform Array to All Equal Elements 1. 解题思路 这一题思路上就是分别考察一下是否能将其转化为全1或者全-1数组即可。 至于每一种情况是否可以达到&#xf…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

Mac软件卸载指南,简单易懂!

刚和Adobe分手&#xff0c;它却总在Library里给你写"回忆录"&#xff1f;卸载的Final Cut Pro像电子幽灵般阴魂不散&#xff1f;总是会有残留文件&#xff0c;别慌&#xff01;这份Mac软件卸载指南&#xff0c;将用最硬核的方式教你"数字分手术"&#xff0…...

ardupilot 开发环境eclipse 中import 缺少C++

目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战

“&#x1f916;手搓TuyaAI语音指令 &#x1f60d;秒变表情包大师&#xff0c;让萌系Otto机器人&#x1f525;玩出智能新花样&#xff01;开整&#xff01;” &#x1f916; Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制&#xff08;TuyaAI…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...