首页 > 其他分享 >uni-app开发记录

uni-app开发记录

时间:2023-12-09 21:22:23浏览次数:28  
标签:String 记录 app 事件 tabbar 按钮 uni

目录

uni-app目录结构

image

静态资源只能存放在static文件夹内

uni-app中的事件

// 事件映射表,左侧为 WEB 事件,右侧为 ``uni-app`` 对应事件
{
    click: 'tap',
    touchstart: 'touchstart',
    touchmove: 'touchmove',
    touchcancel: 'touchcancel',
    touchend: 'touchend',
    tap: 'tap',
    longtap: 'longtap', //推荐使用longpress代替
    input: 'input',
    change: 'change',
    submit: 'submit',
    blur: 'blur',
    focus: 'focus',
    reset: 'reset',
    confirm: 'confirm',
    columnchange: 'columnchange',
    linechange: 'linechange',
    error: 'error',
    scrolltoupper: 'scrolltoupper',
    scrolltolower: 'scrolltolower',
    scroll: 'scroll'
}

uni-app项目中@符号文件路径不提示

当我们新建了一个apihooks等文件夹后,引入文件夹内的文件时使用@符号发现没有提示,可以在tsconfig.json中修改path的设置:

{
	"compilerOptions": {
        ....
		"baseUrl": "./",
		"paths": {
			"@/*": ["/*", "/api/*","/componets/*","/assert/*","/stores/*","/types/*"]
		 }
	}
}

注意:tsconfig.json的推荐配置可在官网中获取,修改-typescript-配置

uni-app中的组件通信

页面通信

  1. 通过uni.$emit("事件名",val)创建事件
  2. onLoad函数内使用uni.$on("事件名",function(val){})监听事件

组件间通信

vue保持一致


节点操作

uni-app中只能获取dom信息,不可以操作dom

官方文档

定义全局scss变量

在根目录下的uni.scss中定义或引入,然后再重启项目

@import url("./assert/css/variable.scss");

//或者直接定义

$input-bgColor:#f5f5f5;

APP相关

解决uniapp编译到APP出现页面抖动与滑动条

在pages.json中的globalStyle --> app-plus中配置:

  • "scrollIndicator": "none"
    禁止出现滚动条

  • "bounce": "none"

    关闭页面回弹效果

{
    "globalStyle": {
        "navigationBarTextStyle": "black",
        "navigationBarTitleText": "咸货",
        "navigationBarBackgroundColor": "#F8F8F8",
        "backgroundColor": "#F8F8F8",
        "app-plus": {
            "scrollIndicator": "none",
            "bounce": "none"
        }
    }
}

tabbar添加一个位于中间的按钮

类似于咸鱼tabbar中间的发布按钮,要实现该功能需要在pages.json中的tabBar中添加midButton

"tabBar": {
		"backgroundColor": "#ffffff",
		"color": "#000000",
		"selectedColor": "#00aa00",
		"borderStyle": "white",
		"list": [...],
		"midButton": {
			"iconPath": "static/tabbar/release.png",
			"iconWidth": "55px",
			"height": "65px"
		}
	}

midButton参数说明:

属性 类型 必填 默认值 描述 平台差异
width String 80px 中间按钮的宽度,tabBar 其它项为减
height String 50px 中间按钮的高度,可以大于 tabBar 高度,达到中间凸起的效果
text String 中间按钮的文字
iconPath String 中间按钮的图片路径
iconWidth String 24px 图片宽度(高度等比例缩放)
backgroundImage String 中间按钮的背景图片路径
iconfont Object 字体图标,优先级高于 iconPath App(3.4.4+)

midButton没有pagePath,需要手动监听点击事件,可以写在main.js入口文件中

uni.onTabBarMidButtonTap(()=>{
	uni.navigateTo({
		url:"/pages/home/releaseGoods"
	})
})

uni.onTabBarMidButtonTap(CALLBACK)API仅在App端和H5端支持,小程序端可以使用自定义tabbar实现。

uni.pageScrollTo滚动问题

问题:滚为位置相差很大的话,需要设置较长的过度时间,否则会滚动不到指定位置的情况。
解决:在uni.pageScrollTo外面嵌套一个setTimeout。如下:

let timer = setTimeout(()=>{
    uni.pageScrollTo({
        scrollTop:1200,
        duration:0,
        fail() {
            console.log("失败了");
        },
        success() {
            console.log("成功了");
        }
    })
    clearTimeout(timer)
},1)
// 延迟时间设置为1即可

标签:String,记录,app,事件,tabbar,按钮,uni
From: https://www.cnblogs.com/ewar-k/p/17891511.html

相关文章

  • Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communicatio
    1、错误原因项目测试Swagger的时候,接口请求一直在那转,出不来数据,其他的配置都正常呀,我就很纳闷,今天记录一下。com.mysql.cj.jdbc.exceptions.CommunicationsException:CommunicationslinkfailureThelastpacketsentsuccessfullytotheserverwas0millisecondsago.The......
  • ApplicationContext is unlikely to start due to a @ComponentScan of the default p
    springboot警告:ApplicationContextisunlikelytostartduetoa@ComponentScanofthedefaultpackage解决办法:1、一般发出这个警告的原因是你把启动类直接放在的src目录下面。2、你需要在src目录下面再建一个包,然后把启动类放到下面。3、或者你错将启动类放到java文件中了......
  • Mybatis使用generator逆向工程生成器生成entity、mapper、.xml模版类
    前言今天将表建好了,但是一个一个的建实体类、Mapper接口、Mapper.xml文件就十分的麻烦,所以我就想到了MyBatis逆向,今天就操作一把!这里我们采用maven来进行操作。一、新建generatorConfig.xml文件首先建好表,在你的项目的resource文件中新建generatorConfig.xml文件。代码如下:<?xmlv......
  • 【UniApp】-uni-app-扩展组件
    前言好,经过上个章节的介绍完毕之后,了解了一下uni-app-内置组件那么了解完了uni-app-内置组件之后,这篇文章来给大家介绍一下UniApp中的扩展组件首先不管三七二十一,先来新建一个项目搭建演示环境创建一个全新的项目:然后在配置一下,微信小程序的AppId,直接去之前的项目中......
  • 集训队胡策2023-2024补题记录
    CTT结束后发现自己胡策题都没咋补,这下尴尬了。主要原本胡策就打着玩的(怎么CTT平均难度比胡策还要简单啊.jpg。还是随便写几篇题解吧。先来个补全进度表,根据胡策OJ或qoj通过情况来评判:测试赛(10.22)A+BProblem奥林匹克五子棋元旦激光炮Day1(10.23)优惠购......
  • UniApp生命周期
    当使用UniApp开发框架时,你可以利用一些生命周期钩子函数来控制页面和组件的初始化、加载和销毁过程。以下是UniApp中的所有生命周期钩子函数以及使用方法和注释解析:一、应用生命周期钩子onLaunch(options):应用初始化时触发,全局只触发一次。App({onLaunch:function(options){......
  • Unicode编码解码
    一、Unicode概述Unicode是一种字符编码标准,旨在解决不同字符集之间的兼容性问题。它为全球所有语言提供了一种统一的编码方式,使得各种字符能够在计算机系统中正确显示和处理。Unicode字符集包含了世界上几乎所有的字符,包括中文字符、英文字符、数字、特殊符号等。Unicode编码......
  • Spring Boot学习随笔- 集成JSP模板(配置视图解析器)、整合Mybatis(@MapperScan注解的使用
    学习视频:【编程不良人】2021年SpringBoot最新最全教程第五章、JSP模板集成5.1引入JSP依赖<!--引入jsp解析依赖--><!--C标签库--><dependency><groupId>jstl</groupId><artifactId>jstl</artifactId><version>1.2</version></depen......
  • 【项目学习】谷粒商城学习记录5 - 检索服务
    【项目学习】谷粒商城学习记录5-检索服务1、搭建页面环境search模块添加thymeleaf依赖<!--thymeleaf--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency>将资料......
  • Unity 锚点 anchor
    1锚点(anchor)是什么?图中被红色方块圈起来的就是锚点,用于描述子物体在父物体的位置。锚点默认是聚在一起,也可以将锚点分开。2锚点的位置设置3锚点控制子物体位置的原理锚点可以组成矩形、一个点和一条线(两个点组成线的两端)3.1锚点位置调整MinXY和MaxXY以父物体......