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

麦当劳的网站优化建议青岛网站设计微动力百家号

麦当劳的网站优化建议,青岛网站设计微动力百家号,威海建设集团网站,怎么在各个网站免费推广信息为了获取到后台服务器发来的数据,需要配置相应的网络地址。位置在main.js入口文件中。 import { $http } from escook/request-miniprogramuni.$http $http // 配置请求根路径 $http.baseUrl https://api-hmugo-web.itheima.net// 请求开始之前做一些事情 $http.…

为了获取到后台服务器发来的数据,需要配置相应的网络地址。位置在main.js入口文件中。

import { $http } from '@escook/request-miniprogram'uni.$http = $http
// 配置请求根路径
$http.baseUrl = 'https://api-hmugo-web.itheima.net'// 请求开始之前做一些事情
$http.beforeRequest = function (options) {uni.showLoading({title: '数据加载中...',})
}// 请求完成之后做一些事情
$http.afterRequest = function () {uni.hideLoading()
}

轮播图的实现

获取轮播图数据

1.首先需要在data中定义轮播图数组,以便将轮播图数据存在数组中。
2.在 onLoad 生命周期函数中调用获取轮播图数据的方法。
3.在 methods 中定义获取轮播图数据的方法,从后台获取轮播图。

export default {data() {return {// 1. 轮播图的数据列表,默认为空数组swiperList: [],}},onLoad() {// 2. 在小程序页面刚加载的时候,调用获取轮播图数据的方法this.getSwiperList()},methods: {// 3. 获取轮播图数据的方法async getSwiperList() {// 3.1 发起请求,将返回数据data赋值给为resconst { data: res } = await uni.$http.get('/api/public/v1/home/swiperdata')// 3.2 请求失败if (res.meta.status !== 200) {return uni.showToast({title: '数据请求失败!',duration: 1500,icon: 'none',})}// 3.3 请求成功,用res数据中的 message 为 data 中的数据赋值this.swiperList = res.message},},
}

res的内容如图所示:
在这里插入图片描述

渲染轮播图的 UI 结构

<template><view><!-- 轮播图区域 --><swiper :indicator-dots="true" :autoplay="true" :interval="3000" :duration="1000" :circular="true"><!-- 循环渲染轮播图数组的 item 项 --><swiper-item v-for="(item, i) in swiperList" :key="i"><view class="swiper-item"><!-- 动态绑定图片的 src 属性 --><image :src="item.image_src"></image></view></swiper-item></swiper></view>
</template>

模拟器模拟效果:
在这里插入图片描述

点击轮播图跳转到商品详情页面

<swiper-item v-for="(item, i) in swiperList" :key="i"><!-- 增加一个动态生成对应的商品详情跳转链接,当检测到轮播图被点击时进行跳转 --><navigator class="swiper-item" :url="'/subpkg/goods_detail/goods_detail?goods_id=' + item.goods_id"><!-- 动态绑定图片的 src 属性 --><image :src="item.image_src"></image></navigator>
</swiper-item>

封装 uni.$showMsg() 方法

当数据请求失败之后,经常需要调用 uni.showToast({ /* 配置对象 */ }) 方法来提示用户。此时,可以在main.js全局封装一个 uni.$showMsg() 方法,来简化 uni.showToast() 方法的调用。

// 封装的展示消息提示的方法
uni.$showMsg = function (title = '数据加载失败!', duration = 1500) {uni.showToast({title,duration,icon: 'none',})
}

分类导航区域的实现

获取分类导航的数据

1.首先需要在data中定义分类导航数组,以便将分类导航数据存在数组中。
2.在 onLoad 生命周期函数中调用获取数据的方法。
3.在 methods 中定义获取数据的方法,从后台获取数据。

export default {data() {return {// 1. 分类导航的数据列表navList: [],}},onLoad() {// 2. 在 onLoad 中调用获取数据的方法this.getNavList()},methods: {// 3. 在 methods 中定义获取数据的方法async getNavList() {const { data: res } = await uni.$http.get('/api/public/v1/home/catitems')if (res.meta.status !== 200) return uni.$showMsg()this.navList = res.message},},
}

res内容如图所示:
在这里插入图片描述

渲染 UI 结构

<!-- 分类导航区域 -->
<view class="nav-list"><view class="nav-item" v-for="(item, i) in navList" :key="i"><image :src="item.image_src" class="nav-img"></image></view>
</view>

模拟器效果:
在这里插入图片描述

点击分类切换到分类页面

<!-- 分类导航区域 -->
<view class="nav-list"><!-- 为 nav-item 类绑定点击事件处理函数,监听到点击事件时执行 --><view class="nav-item" v-for="(item, i) in navList" :key="i" @click="navClickHandler(item)"><image :src="item.image_src" class="nav-img"></image></view>
</view>
// nav-item 项被点击时候的事件处理函数
navClickHandler(item) {// 判断点击的是哪个 navif (item.name === '分类') {//切换页面uni.switchTab({url: '/pages/cate/cate'})}
}

楼层区域的实现

获取楼层数据

1.定义 data 数据
2.在 onLoad 中调用获取数据的方法
3.在 methods 中定义获取数据的方法

export default {data() {return {// 1. 楼层的数据列表floorList: [],}},onLoad() {// 2. 在 onLoad 中调用获取楼层数据的方法this.getFloorList()},methods: {// 3. 定义获取楼层列表数据的方法async getFloorList() {const { data: res } = await uni.$http.get('/api/public/v1/home/floordata')if (res.meta.status !== 200) return uni.$showMsg()this.floorList = res.message},},
}

res内容:
在这里插入图片描述

渲染楼层的标题

<!-- 楼层区域 -->
<view class="floor-list"><!-- 楼层 item 项 --><view class="floor-item" v-for="(item, i) in floorList" :key="i"><!-- 楼层标题 --><image :src="item.floor_title.image_src" class="floor-title"></image></view>
</view>

渲染楼层里的图片

<!-- 楼层图片区域 -->
<view class="floor-img-box"><!-- 左侧大图片的盒子 --><view class="left-img-box"><image :src="item.product_list[0].image_src" :style="{width: item.product_list[0].image_width + 'rpx'}" mode="widthFix"></image></view><!-- 右侧 4 个小图片的盒子 --><view class="right-img-box"><view class="right-img-item" v-for="(item2, i2) in item.product_list" :key="i2" v-if="i2 !== 0"><image :src="item2.image_src" mode="widthFix" :style="{width: item2.image_width + 'rpx'}"></image></view></view>
</view>

效果:
在这里插入图片描述

实现跳转

// 获取楼层列表数据
async getFloorList() {const { data: res } = await uni.$http.get('/api/public/v1/home/floordata')if (res.meta.status !== 200) return uni.$showMsg()// 通过双层 forEach 循环,处理res中的 URL 地址,将地址的查询部分分割出来重新连接到指向分包的 URLres.message.forEach(floor => {floor.product_list.forEach(prod => {prod.url = '/subpkg/goods_list/goods_list?' + prod.navigator_url.split('?')[1]})})this.floorList = res.message
}

把图片外层的 view 组件,改造为 navigator 组件,并动态绑定 url 属性 的值:

<!-- 楼层图片区域 -->
<view class="floor-img-box"><!-- 左侧大图片的盒子 --><navigator class="left-img-box" :url="item.product_list[0].url"><image :src="item.product_list[0].image_src" :style="{width: item.product_list[0].image_width + 'rpx'}" mode="widthFix"></image></navigator><!-- 右侧 4 个小图片的盒子 --><view class="right-img-box"><navigator class="right-img-item" v-for="(item2, i2) in item.product_list" :key="i2" v-if="i2 !== 0" :url="item2.url"><image :src="item2.image_src" mode="widthFix" :style="{width: item2.image_width + 'rpx'}"></image></navigator></view>
</view>
http://www.yayakq.cn/news/41135/

相关文章:

  • 如何手机做网站宁德城乡住房建设厅网站
  • 古镇企业网站建设wordpress cros
  • 唐山做网站哪家好南宁百度seo网站优化
  • 小企业网站建设平台青岛黄页电话查询
  • 网站自适应网站开发行业代码
  • 自己制作一个网站需要多少钱wordpress mysuc cms
  • 聊城做手机网站推广wordpress屏蔽谷歌蜘蛛
  • 南阳网站推广方案我想网上开店怎么开
  • 我想建网站网架公司赵娜
  • 阜宁网站建设找哪家好greentree wordpress
  • 如何做seo优化恩施seo快速排名
  • WordPress不关站备案插件wordpress 实现吐槽 插件
  • 江津网站建设怎么样大学帮学校做网站
  • 事业单位网站建设的账务处理静态网站建设
  • 现在做网站都是怎么做的郑州个人网站建设公司排行榜
  • 响应式网站和平时网站的区别wordpress相册编辑插件下载
  • 网站建设备案信息阿里云服务器搭建wordpress
  • 网站建设的基本步骤是为什么网站建设起来搜素不到
  • 网站建设综合训练网站关键词突然搜不到
  • 网络公司给我做网站我有没有源代码版权吗想学服装设计从什么开始学起
  • 乐都网站建设北京单页营销型网站
  • 西安+美院+网站建设网站开发范本
  • 网站建设论文答辩自述ffmpeg wordpress
  • 网站备案后 换服务器做网站要什么步骤
  • 广东省建设银行招聘网站商务网站开发实验报告
  • 工作室做网站wordpress 微信发布
  • 泰安网站建设泽讯代表性设计制作作品图片
  • 青岛网站空间永久虚拟主机
  • asp网站建设教案现在做什么行业前景好
  • 文化传播网站建设加强网站制度建设