uni-app开发记录

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

目录
  • uni-app目录结构
  • uni-app中的事件
  • uni-app中的组件通信
    • 页面通信
    • 组件间通信
  • 节点操作
  • 定义全局scss变量
  • APP相关
    • 解决uniapp编译到APP出现页面抖动与滑动条
    • tabbar添加一个位于中间的按钮
    • uni.pageScrollTo滚动问题

uni-app目录结构

uni-app开发记录

静态资源只能存放在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中的组件通信

页面通信

  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。如下:文章来源地址https://www.toymoban.com/news/detail-750030.html

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

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

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

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

相关文章

  • uni-app学习记录

    uni-app学习记录

    暑假浅学一下uni-app,试着用博客记录一下  目录 1.项目目录 2.全局配置 3.页面配置 4.tabBar配置 5.condition配置 6.组件的基本使用 1)text文本组件 2)view视图容器组件 3)button按钮组件 4)image图片组件 7.uni-app中的样式 8.uni-app中的数据绑定 1)插值表达式的使用 2)v-bind的使用 3)

    2024年02月09日
    浏览(9)
  • uni-app:监听数据变化(watch监听、@input事件)

    方法一:文本框监听,使用 @input 事件 方法二:使用watch监听属性(很好解决了文本框中数据非手输时监听不到数据变化)

    2024年02月10日
    浏览(11)
  • uni-app中uni-table的uni-tr无点击事件

    uni-app中uni-table的uni-tr无点击事件

    本文记录用于记录使用 uni-app 开发过程遇到的bug。 在使用 uni-table 时,想给 uni-table 的行添加行点击事件;但发现官方并未给 uni-tr 增加点击行点击事件(很多事件都没有),这个问题很久就有人在其官方论坛提出,但官方一直没有解决。在csdn中找了一个类似的帖子,但本人

    2024年02月15日
    浏览(18)
  • uni-app打包小程序根据不同编译条件打包不同静态素材目录

    uni-app打包小程序根据不同编译条件打包不同静态素材目录

    在uni-app开发小程序的时候,我们经常有这样的需求,一个小程序,拥有多个不同样式的模板,发布的时候,为了减少包的体积,我们希望只打包当前使用的模板对应的静态素材目录,而其他模板的目录不打包进去。 在package.json中定义的模板变量如下: 每一个模板的静态素材

    2024年02月10日
    浏览(13)
  • 基于uni-app的微信小程序Map事件穿透处理

    业务需要在微信小程序中使用地图组件,上面需要有点位及点位的交互,同时地图上也会有一些悬浮的按钮、弹窗之类的。在微信小程序2.8.x的版本之后,地图这种原生组件是支持同层渲染的,也就是可以通过样式控制层级。在开发者工具中表现正常,但是上了真机后会发现点

    2024年02月11日
    浏览(29)
  • uni-app微信小程序多种分享事件监听并带参数

    监听用户点击右上角菜单的「复制链接」按钮时触发的事件。 *query:字符串string类型 ‘a=1b=2’ *

    2024年02月15日
    浏览(16)
  • 记录--Uni-app接入腾讯人脸核身

    记录--Uni-app接入腾讯人脸核身

    人脸核身功能有多种接入方式,其中包含微信H5、微信小程序、APP、独立H5、PC端、API接入6种方式。 ​ 我们的产品是使用uni-app来开发,所以第一时间考虑使用H5方式接入,但是通过与官方技术人员对接后得知,uni-app是有原生插件可以用的,所以可以使用app的方式接入,原生的

    2024年02月19日
    浏览(45)
  • 关于uni-app微信小程序监听顶部左上角的返回事件

    关于uni-app微信小程序监听顶部左上角的返回事件

    在项目上返回上一级的时候需要清空vuex里的数据,使用了onBackPress无效。 查看官方文档后才发现onBackPress对微信小程序无效。  然后我发现了另一个生命周期——onUnload 完美解决!!!

    2024年02月08日
    浏览(11)
  • uni-app中的uni.requireNativePlugin()

    uni-app中的uni.requireNativePlugin()

    这个方法是用来引入原生插件的方法,自 HBuilderX 1.4 版本起,uni-app 支持引入原生插件,使用方式如下: 引入插件的类型有三种: 内置原生插件:         内置原生插件,uni-app已默认集成,支持直接在内置基座运行。         仅在nvue页面,支持引入BindingX,animation,

    2024年02月16日
    浏览(12)
  • uni-app黑马优购项目学习记录(上)

    uni-app黑马优购项目学习记录(上)

    🖥️ NodeJS专栏:Node.js从入门到精通 🖥️ 蓝桥杯真题解析:蓝桥杯Web国赛真题解析 🧧 加入社区领红包:海底烧烤店ai(从前端到全栈) 🧑‍💼个人简介:即将大三的学生,一个不甘平庸的平凡人🍬 👉 你的一键三连是我更新的最大动力❤️! 🏆分享博主自用 牛客网

    2024年02月10日
    浏览(11)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包