uni-app中使用lodash_uniapp小知识-2

前言

  之前学过一段时间的unaipp,但是总是没有正式的拿他做过一些东西,现在开始实践,消化一下知识点。


开搞

  1.自定义标题栏

dad463c97cd9106fa74892a8b4428be3.png

修改pages.json

23d6d8156f008323a3648f2109acbb38.png

自定义

  2.数组去重

var max = 24;var min = 0;var arr = new Array(max);for (var i = 0; i < max; i++) {    var k = parseInt(Math.random() * (max - min + 1)) + min; //用于指定生成某一范围内的随机数    arr.push(k + "");}var array = [];for (var k = 0; k < arr.length; k++) {    if (arr[k] !== undefined) {        if (!array.includes(arr[k])) {            array.push(arr[k]);        }    }}

  3.unaipp中标签的变化

div、ul、li 改成 view
span、font 改成 text
a 改成 navigator
image改成 cover-image
form、button、checkbox、radio、label、textarea、canvas、video 、input 这些还在。
select 改成 picker

  4.使用scroll-view标签出现的问题
    在使用scroll-view的时候想让它里面的东西横向滚动,可以使用scroll-x="true",之后在css里面添加white-space: nowrap;可以让子组件不换行。但是问题出现了,当里面的view标签有字的时候会出现无论你怎么设置都不会使字换行,这样就要在那个子组件的css中加上white-space: normal;,就可以完美解决。

0d6d736b445194746e530147213b8c8a.png

就像这样


  5.rpx和px
    学了unaipp才知道有 rpx这个尺寸,我在使用的过程中发现他俩的关系是1rpx = 1/2px。本来没注意,只是在h5和微信小程序适配的时候出现文字同样的尺寸34px在uniapp中看着还行,但是在小程序中要么太大,要么太小,怎么改都不行,于是乎就用了rpx,神奇的是竟然可以了!!!建议在使用尺寸的时候用rpx
  6.image和text垂直居中可以在图片上加上vertical-align: middle;
  7.uniapp用于非bar页面传输对象

//传送goToEvaluate(item) {   uni.navigateTo({       url: './evaluate?item=' + encodeURIComponent(JSON.stringify(item)),       success: (res) => {           console.log(res);       },       fail: (err) => {           console.log(err)       }   })}
//接收onLoad(option) {    var item = JSON.parse(decodeURIComponent(option.item));    this.custom = item}

  8.触摸事件(上下左右滑动)

data() {    return {        startData: {            clientX: 0,            clientY: 0        },     }},/*在methods中实现这两个方法*/start(e) {        var subY = e.changedTouches[0].clientY;//获取触摸的起始位置的纵坐标        var subX = e.changedTouches[0].clientX;//获取触摸的起始位置的横坐标        this.startData.clientX = subX;        this.startData.clientY = subY;},end(e) {    const subX = e.changedTouches[0].clientX - this.startData.clientX;    const subY = e.changedTouches[0].clientY - this.startData.clientY;    var suby = this.startData.clientY    var subx = this.startData.clientX    if (suby >= 243 && suby <= 405) {        if (subx >= 144 && subx <= 240) {            console.log("点击屏幕中间的部分")        }    }    if (subY > 50) {        console.log('上滑 ====>' + subY)        return;    } else if (subY < -50) {        console.log('下滑 ====>' + subY)        return;    } else {        if (subX > 50) {            console.log('右滑')            return;        } else if (subX < -50) {            console.log('左滑')            return;        } else {            console.log('就点了一下,不是中间,也没滑动')            return;        }    }}

  8.如果想让自己的项目在手机端,微信小程序端和h5通用,那么就要用到布局了,我推荐流式布局,display:flex;和flex-direction: row;
  9.unaipp在图片上有一个坑,它那个 cover-image不好用,不是在h5上出不来就是在手机端出不来。所以建议使用image

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在uni-app使用Echarts,可以使用ECharts插件,以下是使用ECharts插件的步骤: 1. 在uni-app的HBuilderX创建一个新项目并打开pages目录。 2. 在pages目录创建一个新页面,例如“echarts”。 3. 在“echarts”页面的目录,右键单击并选择“新建->插件页面”。 4. 在“插件页面”对话框,输入“echarts”并选择“ECharts”插件。 5. 安装插件并完成后,重新启动HBuilderX。 6. 在“echarts”页面的目录,打开“echarts.vue”文件。 7. 添加Echarts图表组件,例如: ``` <template> <view class="echarts"> <ec-canvas canvas-id="mychart" :canvas-type="canvasType" :disable-scroll="true" :opts="opts" @echarts_init="echartsInit"></ec-canvas> </view> </template> <script> import * as echarts from '@/uni_modules/echarts/js/echarts.js' export default { data() { return { canvasType: '2d', opts: { lazyLoad: true } } }, onReady() { // 初始化图表 this.initChart() }, methods: { initChart() { this.$nextTick(() => { this.ecComponent = this.$refs['mychart'].getEcComponent() this.ecComponent.init((canvas, width, height, dpr) => { const chart = echarts.init(canvas, null, { width: width, height: height, devicePixelRatio: dpr }) this.setOption(chart) return chart }) }) }, setOption(chart) { const option = { title: { text: 'ECharts 入门示例' }, tooltip: {}, xAxis: { data: ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子'] }, yAxis: {}, series: [{ name: '销量', type: 'bar', data: [5, 20, 36, 10, 10, 20] }] } chart.setOption(option) }, echartsInit(ec) { echarts.registerMap('china', window.__uniapp__.chinaJson) this.ec = ec this.initChart() } } } </script> <style> .echarts { width: 100%; height: 100%; } </style> ``` 8. 保存并运行“echarts”页面,应该可以看到一个简单的Echarts图表。 这是一个简单的ECharts图表,在实际使用,可以根据需要自定义ECharts图表组件和图表选项。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值