微信小程序开发之flex布局及轮播图组件与后台Mock.js交互

news2025/1/23 4:56:02

目录

前言

一.flex布局

1.什么的flex布局

2.容器属性

2.1 flex-direction属性

2.2 flex-wrap属性

2.3 justify-content属性

特点:

二.轮播图

1.配置地址请求信息

2.通过方法加载轮播图数据

3.合法域名纠正

​编辑 4.通过Mock.js模拟响应数据

5.轮播图前端展示 


前言

本期为大家带来的是微信小程序开发之flex布局及轮播图组件与后台Mock.js交互,文章会为大家讲解小程序开发中的flex布局、轮播图组件及如何与后台的Mock.js实现数据绑定交互

一.flex布局

1.什么的flex布局

采用Flex布局的元素,称为Flex容器(flex container),简称”容器”。它的所有子元素自动成为容器成员,称为Flex项目(flex item),简称”项目”。

容器默认存在两根轴:水平的主轴(main axis)和垂直的交叉轴(cross axis)。主轴的开始位置(与边框的交叉点)叫做main start,结束位置叫做main end;交叉轴的开始位置叫做cross start,结束位置叫做cross end。

项目默认沿主轴排列。单个项目占据的主轴空间叫做main size,占据的交叉轴空间叫做cross size。

2.容器属性

2.1 flex-direction属性

flex-direction属性决定主轴的方向(即项目的排列方向)。

.box {
  flex-direction: row | row-reverse | column | column-reverse;
}

它可能有4个值。

  • row(默认值):主轴为水平方向,起点在左端。
  • row-reverse:主轴为水平方向,起点在右端。
  • column:主轴为垂直方向,起点在上沿。
  • column-reverse:主轴为垂直方向,起点在下沿。

2.2 flex-wrap属性

默认情况下,项目都排在一条线(又称”轴线”)上。flex-wrap属性定义,如果一条轴线排不下,如何换行。

.box{
  flex-wrap: nowrap | wrap | wrap-reverse;
}

它可能取三个值。

(1)nowrap(默认):不换行。

(2)wrap:换行,第一行在上方。

(3)wrap-reverse:换行,第一行在下方。

2.3 justify-content属性

justify-content属性定义了项目在主轴上的对齐方式。

.box {
  justify-content: flex-start | flex-end | center | space-between | space-around;
}

它可能取5个值,具体对齐方式与轴的方向有关。下面假设主轴为从左到右。

  • flex-start(默认值):左对齐
  • flex-end:右对齐
  • center: 居中
  • space-between:两端对齐,项目之间的间隔都相等。
  • space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。

特点:

  1. 弹性容器(Flex Container):这是应用Flex布局的父元素,通过设置其display属性为flexinline-flex来定义。弹性容器内的直接子元素被称为弹性项目。

  2. 弹性项目(Flex Item):这是弹性容器内的子元素,它们可以在容器内自由排列。每个弹性项目都具有一些可调整的属性,以定义其在容器内的行为,例如flex-growflex-shrinkflex-basis

  3. 主轴和交叉轴:Flex布局有一个主轴和一个交叉轴。主轴是弹性容器的主要方向,通常用于排列弹性项目,而交叉轴则垂直于主轴。你可以使用flex-direction属性来定义主轴的方向。

  4. 弹性盒子模型:在Flex布局中,弹性项目按照一种弹性盒子模型进行排列。这意味着它们可以根据可用空间的大小自动调整尺寸,并以某种方式对齐。

  5. 弹性因子:每个弹性项目都有一个弹性因子,即flex属性。它控制了项目在容器内分配可用空间的比例。例如,如果一个项目的flex值是2,而另一个项目的flex值是1,前者将获得容器内可用空间的两倍。

  6. 对齐和排序:你可以使用不同的属性来控制弹性项目在主轴和交叉轴上的对齐方式,例如justify-contentalign-items

  7. 响应式布局:Flex布局非常适合创建响应式设计,因为它可以自动适应不同屏幕尺寸和方向。

二.轮播图

1.配置地址请求信息

在根目录下新建目录config,在其文件夹中新建app.js文件并添加以下代码

// 以下是业务服务器API地址
 // 本机开发API地址
 var WxApiRoot = 'http://localhost:8080/demo/wx/';
 // 测试环境部署api地址
 // var WxApiRoot = 'http://192.168.0.101:8070/demo/wx/';
 // 线上平台api地址
 //var WxApiRoot = 'https://www.oa-mini.com/demo/wx/';
 
 module.exports = {
   IndexUrl: WxApiRoot + 'home/index', //首页数据接口
   SwiperImgs: WxApiRoot+'swiperImgs', //轮播图
   MettingInfos: WxApiRoot+'meeting/list', //会议信息
 };

2.通过方法加载轮播图数据

在当前页面的的js文件中添加以下方法

例:index/index.js         

loadSwiperImgs(){
    let that=this;
    wx.request({
        url: api.SwiperImgs,
        dataType: 'json',
        success(res) {
          console.log(res)
          that.setData({
              imgSrcs:res.data.images
          })
        }
      })
  },

 在当前index.js文件顶部定义获取配置信息的应用实例

const api = require("../../config/app.js")

然后在我们加载onLoad方法中去调用我们刚刚定义的方法

3.合法域名纠正

我们当前在测试阶段,所以使用的域名是没有安全校验的,不过这不影响我们测试,我们只需要在开发工具右上角详情中勾选取消安全校验即可

 4.通过Mock.js模拟响应数据

找到控制台的Mock

将控制台中的url地址复制到信息接口地址,并将图中对应的信息填写

 

{
  "data": {
    "images":[
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner1.png",
    "text": "1"
  },
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner2.png",
    "text": "2"
  },
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner3.png",
    "text": "3"
  },
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner4.png",
    "text": "4"
  },
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner5.png",
    "text": "5"
  },
  {
    "img": "https://cdn-we-retail.ym.tencent.com/tsr/home/v2/banner6.png",
    "text": "6"
  }
]
  },
  "statusCode": "200",
  "header": {
    "content-type":"applicaiton/json;charset=utf-8"
  }
}

定义好响应接口后重新编译,当控制台出现打印信息时,说明接口数据请求成功了

5.轮播图前端展示 

<!--index.wxml-->
<view>
  <swiper indicator-dots="true" autoplay="true">
        <block wx:for="{{imgSrcs}}" wx:key="text">
          <swiper-item>
            <image src="{{item.img}}"></image>
          </swiper-item>
        </block>
      </swiper>
</view>

获取对应数据信息展示效果

 

今天的分享到这里就结束了,感谢各位大大的观看,各位大大的三连是博主更新的动力,感谢谢谢谢谢谢谢谢谢各位的支持!!!!! 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1102070.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端开发工具有哪些?17款前端工程师必备工具推荐!

软件开发是一个高度专业化的职业分工&#xff0c;根据所使用的编程语言的不同&#xff0c;会细分出多种岗位&#xff1a;前端开发、后端开发、客户端开发、iOS开发、Android开发、数据库开发等等&#xff0c;具体到每一个岗位&#xff0c;工作中常用的工具软件也存在着差别。 …

框架篇

一、Spring中的单例Bean是线程安全的吗 二、AOP相关面试题 三、Spring中的事务 四、Spring中事务失效的场景有 五、Spring bean的生命周期 六、Spring的循环依赖 七、SpringMVC的执行流程 八、自动配置原理 九、Spring框架常见的注解 十、Mybatis的执行流程 十一、MyBatis延迟加…

进阶JAVA篇- Lambda 表达式与 Lambda 表达式的省略规则

目录 1.0 什么是 Lambda 表达式&#xff1f; 1.1 既然跟匿名内部类相关&#xff0c;先来回顾匿名内部类。 1.2 Lambda 表达式与匿名内部类之间的关系。 1.3 函数式接口 1.4 在具体代码中来操作一下 2.0 Lambda 表达式省略规则 1.0 什么是 Lambda 表达式&#xff1f; Lambda 表达…

企业打造VR虚拟展厅,开启商务洽谈新时代!

现代化数字营销中&#xff0c;企业做了虚拟线上展厅和不做虚拟展厅的对比是很明显的&#xff0c;VR虚拟展厅让企业产品、企业环境、企业实力的展示更加真实、直观。虚拟展厅是一种在线展示企业形象和品牌的新型方式&#xff0c;随着VR技术的发展&#xff0c;虚拟展厅正在逐步取…

户外暴晒测试系统太阳光模拟器

概述 户外暴晒测试系统太阳光模拟器是一种设备&#xff0c;用于模拟太阳光以测试和评估材料、产品或设备在户外的耐久性和性能。它由光源、光学系统、试样台和控制系统组成。通过调整参数&#xff0c;模拟不同时间、地点和季节的太阳光条件&#xff0c;对样品进行长时间暴晒&a…

【LeetCode刷题(数据结构与算法)】:用队列实现栈

请你仅使用两个队列实现一个后入先出&#xff08;LIFO&#xff09;的栈&#xff0c;并支持普通栈的全部四种操作&#xff08;push、top、pop 和 empty&#xff09; 实现 MyStack 类&#xff1a; void push(int x) 将元素 x 压入栈顶 int pop() 移除并返回栈顶元素 int top() 返…

python版李相夷

1、我们绘制原图是这张lxy.jpg 2、具体代码如下 运行python main.py lxy.jpg就可以实现绘制过程了&#xff01;&#xff08;可能会比较慢&#xff09; # -*- coding: utf-8 -*-import turtle as te from bs4 import BeautifulSoup import argparse import sys import numpy a…

【Linux】Linux常用指令

ls指令&#xff08;对属性操作&#xff0c;查看文件相关属性&#xff09; 用法&#xff1a;ls[选项][目录或文件] 功能&#xff1a;1. 对于目录&#xff0c;该命令列出该目录下的所有子目录和文件。2. 对于文件&#xff0c;将列出文件名以及其他信息。 常用选项&#xff1a; …

jmeter 解决查看结果树响应内容中文乱码问题

jmeter 解决查看结果树响应内容中文乱码问题 查看结果树中&#xff0c;接口响应内容中&#xff0c;包含中文&#xff0c;显示乱码&#xff1b; 临时解决方法&#xff0c;添加BeanShell 后置处理程序&#xff0c;添加内容prev.setDataEncoding("utf-8"); 运行压测…

矫正图片背景

在利用明场或荧光显微镜成像时&#xff0c;往往会由于样品厚度不一、镜头污渍或者光照不均等因素&#xff0c;降低图片质量&#xff0c;从而影响分析以及展示。 这篇文章就为大家介绍&#xff1a;怎样利用 ImageJ 对图片进行背景校正&#xff0c;包括两个方面&#xff1a;白平…

前端跨域问题解决

一、同源策略 同源策略是一个重要的安全策略&#xff0c;它用于限制一个Origin的文档或者它加载的脚本如何能与另一个源的资源进行交互。它能帮助阻隔恶意文档&#xff0c;减少可能被攻击的媒介。 Origin&#xff1a;指web文档的来源&#xff0c;Web 内容的来源取决于访问的U…

数据结构: 二叉搜索树

目录 1.二叉搜索树概念 2.二叉搜索树的操作 3.二叉搜索树的实现 3.1定义BST 3.2功能实现 1.默认成员函数 2.非递归 插入 查找 删除 3.递归 插入 查找 删除 4.二叉搜索树的应用 1.二叉搜索树概念 二叉搜索树又称二叉排序树&#xff0c;它可以是一棵空树&#xff…

Java连接PostGreSql

本次试验怎么用jdbc连接PostGreSql数据库。首先需要安装一个pgsql数据库&#xff0c;安装就不介绍了。安装后自己用SQL创建表&#xff0c;如有下图的库和表&#xff0c;怎么用java带SQL参数连接他取的数据。 PG库下载地址 首先到官网上根据自己的Java版本下载jdbc驱动jdbc下载…

HCIP静态路由综合实验

题目&#xff1a; 步骤&#xff1a; 第一步&#xff1a;搭建上图所示拓扑; 第二步&#xff1a;为路由器接口配置IP地址&#xff1b; R1&#xff1a; [R1]display current-configuration intinterface GigabitEthernet0/0/0ip address 192.168.1.1 255.255.255.252 interfa…

FL Studio 2023中文安装设置指南!四招教你玩转FL Studio21!

Fl Studio是一款极具时尚元素的音乐制作软件&#xff0c;对于粉丝群体来说简直是一大福利&#xff01;不仅可以充分发挥你的创造力&#xff0c;还能展现你的音乐才华。这里给你分享几个设置中文的技巧&#xff0c;让你的Fl Studio体验更上一层楼&#xff01; 编曲软件FL Studi…

警惕这款记录音频和电话的Android木马软件SpyNote

导语&#xff1a;近日&#xff0c;一款名为SpyNote的Android木马软件被揭示出其多样化的信息收集功能。该木马软件通常通过短信钓鱼攻击传播&#xff0c;攻击链通过欺骗潜在受害者点击嵌入链接来安装该应用程序。除了要求入侵性权限以访问通话记录、摄像头、短信和外部存储等&a…

vite react react-pdf pdfjs-dist 加载不全的解决方案 cmaps本地路径

pdf.js 字体无法显示 pdfjs-dist加载不全的解决方案 Rollup 配置 rollup-plugin-copy插件&#xff0c;进行打包构建时的文件复制 参考了网上诸多解决方案&#xff0c;都是webpack的引入包方式&#xff0c; 照猫画虎&#xff0c;把vite解决方案奉献给大家 vite.config.js impo…

小程序:uniapp解决主包体积过大的问题

已经分包但还是体积过大 运行时勾选“运行时是否压缩代码”进行压缩 在manifest.json配置&#xff08;开启分包优化&#xff09; "mp-weixin" : {"optimization" : {"subPackages" : true}//.... },在app.json配置&#xff08;设置组件按需注入…

【CANN训练营】UART、SPI、I2C串口通信介绍笔记

UART、SPI、I2C串口通信介绍 UART通信 串行通信和并行通信 数据通信&#xff1a;若干个数据设备之间的信息交换称为数据通信。 两种方式&#xff1a;并行通信和串行通信 并行通信&#xff1a;数据的各位同时传送&#xff0c;每一位数据都需要一条传输线并且需要若干条控制…

H5+Vue3编写官网,并打包发布到同一个域名下

背景 因为html5有利于搜索引擎抓取和收录我们网站更多的内容&#xff0c;对SEO很友好&#xff0c;可以为网站带来更多的流量,并且多端适配&#xff0c;兼容性和性能都非常不错&#xff0c;所以使用h5来编写官网首页。 因为用户个人中心可以通过官网跳转&#xff0c;不需要被浏…