小程序中实现点击切换不同组件的效果

2023-10-26

前言:

       小程序中实现点击切换不同页面的组件效果。

实现效果:

实现步骤:

第一:分别建立三个页面的文件夹以及他们的相关文件

第二:index模块中

index.wxml

<!--index.wxml-->
<view class="container">

  <!--主体内容-->
  <view wx:if="{{active == 0}}">
    <view>我是首页</view>
    <van-button type="primary">按钮</van-button>
    <van-icon name="chat" dot />
  </view>
  <tablePage  wx:if="{{active == 1}}"></tablePage>
  <usePage  wx:if="{{active == 2}}"></usePage>

  <!--底部导航栏-->
  <view class='footer'>
    <view
      class="footerLi {{index == active ? 'footerActive' : ''}}"
      wx:for="{{footer}}"
      wx:key="index"
      bindtap='changeActive'
      data-index="{{index}}">
      {{item.name}}
    </view>
  </view>
</view>

index.json中注册其他的页面

index.js中定义 wx:if  的条件  active  还有底部导航栏的列表数据,以及点击事件

//index.js
Page({
  data: {
    active: 0,
    footer:[
      {
        id:'1',
        name:'首页',
        url:'index'
      },{
        id:'2',
        name:'列表',
        url:'table'
      },{
        id:'3',
        name:'我的',
        url:'use'
      }

    ]
  },

  onLoad: function() {

  },
  changeActive(item) {
    let index = item.currentTarget.dataset.index
    this.setData({
      active: index
    })
  }


})

index.wxss中定义样式

/**index.wxss**/
.container{
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   width: 100%;
   height: 100vh;
}
.footer{
  width:100%;
  height:50px;
  display: flex;
  background:pink;
}
.footerActive{
  background:blue;
  color:#fff;
}
.footerLi{
  width:33.33%;
  line-height:50px;
  text-align:center;
}

第三 table模块中

index.wxml

<!--pages/table/index.wxml-->
<view class="shopList">
  <van-card
    num="2"
    tag="标签"
    price="10.00"
    desc="描述信息"
    title="商品标题"
    thumb="{{ imageURL }}"
  >
    <view slot="footer">
      <van-button size="mini">第一个按钮</van-button>
      <van-button size="mini">第二个按钮</van-button>
    </view>
  </van-card>

</view>

第四 use模块中

index.wxml

<!--pages/use/index.wxml-->
<van-notice-bar
  left-icon="volume-o"
  text="我的地盘我做主,哈哈哈哈哈哈哈。"
/>

<view>倒计时</view>
<van-count-down time="{{ time }}"  format="DD 天 HH 时 mm 分 ss 秒" />

第五 app.json中一定不能忘记注册页面

{
  "pages": [
    "pages/index/index",
    "pages/table/index",
    "pages/use/index"
  ],
  "window": {
    "backgroundColor": "#F6F6F6",
    "backgroundTextStyle": "light",
    "navigationBarBackgroundColor": "#F6F6F6",
    "navigationBarTitleText": "测试项目demo",
    "navigationBarTextStyle": "black"
  },
  "sitemapLocation": "sitemap.json",

  "usingComponents": {
    "van-button": "miniprogram_npm/@vant/weapp/button/index",
    "van-uploader": "miniprogram_npm/@vant/weapp/uploader/index",
    "van-dialog": "miniprogram_npm/@vant/weapp/dialog/index",
    "van-icon": "miniprogram_npm/@vant/weapp/icon/index",
    "van-card": "miniprogram_npm/@vant/weapp/card/index",
    "van-notice-bar": "miniprogram_npm/@vant/weapp/notice-bar/index",
    "van-count-down": "miniprogram_npm/@vant/weapp/count-down/index"

  }
}

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

小程序中实现点击切换不同组件的效果 的相关文章

随机推荐

  • 各种音视频编解码学习详解(11)--Flash Video系列

    用于在 Flash 中压缩视频 FLV流媒体格式是一种新的视频格式 它的出现有效地解决了视频文件导入Flash后 使导出的SWF文件体积庞大 不能在网络上有效使用等 缺点 一般FLV文件包在SWF PLAYER 的壳里 并且FLV可以很好的
  • Linux Memcached 安装

    1 Linux系统安装memcached 首先要先安装libevent库 memcache依赖于libevent 必须先安装 自动下载安装方式 也可使用源码安装方式 yum install libevent devel yum instal
  • 陪我到可可西里看一看海,不要未来,只要你来。——大冰 《陪我到可可西里去看海》

    陪我到可可西里看一看海 不要未来 只要你来 大冰 陪我到可可西里去看海
  • 斐波那契查找详细注解版

    对于斐波那契数列 1 1 2 3 5 8 13 21 34 55 89 也可以从0开始 前后两个数字的比值随着数列的增加 越来越接近黄金比值0 618 比如这里的89 把它想象成整个有序表的元素个数 而89是由前面的两个斐波那契数34和55
  • Python中RotatingFileHandler、TimedRotatingFileHandler函数用法

    欢迎来到我的博客 作者 秋无之地 简介 CSDN爬虫 后端 大数据领域创作者 目前从事python爬虫 后端和大数据等相关工作 主要擅长领域有 爬虫 后端 大数据开发 数据分析等 欢迎小伙伴们点赞 收藏 留言 背景 在python开发过程中
  • Linux如何卸载软件

    Linux系统可以通过终端 Terminal 或图形界面 GUI 来卸载软件 终端方式可以使用apt get Ubuntu 或yum CentOS 命令来实现 而图形界面方式可以使用系统自带的软件管理器来实现 比如Ubuntu的Ubuntu
  • libev学习系列之二:libev下载

    libev学习系列之二 libev下载 版本说明 版本 作者 日期 备注 0 1 ZY 2019 5 31 初稿 目录 文章目录 libev学习系列之二 libev下载 版本说明 目录 官网 GitHub 我的某度网盘 官网 可以去官网下载
  • 【python练习题 03】高矮个子排队

    题目 现在有一队小朋友 他们高矮不同 我们以正整数数组表示这一队小朋友的身高 如数组 5 3 1 2 3 我们现在希望小朋友排队 以 高 矮 高 矮 顺序排列 每一个 高 位置的小朋友要比相邻的位置高或者相等 每一个 矮 位置的小朋友要比相
  • Date:January 29th Title: 集训Day2-小信小友打怪兽 题解

    时间 1s 空间 256M 题目描述 小信与小友一起组队打怪兽 有一个长度为n的怪兽序列 一些怪兽会对小信造成伤害 另一些不会 小友是大佬 所有怪兽都伤害不了他 小信与小友轮流打怪兽 小信先手 小友后手 他们需要按照顺序打怪兽 由于技能有冷
  • 小米盒子3s刷机为国际版系统android TV 8.0

    小米盒子3s刷机为国际版系统android TV 8 0 所需工具和软件 一个U盘 adb工具 使用adb工具 通过ip连接小米盒子 官方下载地址 点此进入 dump 16AB img MiBOX3S queenchristina r145
  • tera-PROMISE数据集

    tera Promise数据集 原网址 http openscience us repo 已经打不开 备份网址 https github com opensciences opensciences github io 来源 论文An Imp
  • 蓝桥杯历届试题——取球游戏(博弈论)

    取球游戏 今盒子里有n个小球 A B两人轮流从盒中取球 每个人都可以看到另一个人取了多少个 也可以看到盒中还剩下多少个 并且两人都很聪明 不会做出错误的判断 我们约定 每个人从盒子中取出的球的数目必须是 1 3 7或者8个 轮到某一方取球时
  • 文件对应的Content-Type类型

    https www cnblogs com liu heng p 7520564 html CONTENT TYPE load text html 123 application vnd lotus 1 2 3 3ds image x 3d
  • 海思Hi3559A平台移植 opencv4.0.0

    原文 https blog csdn net xclshwd article details 85257117 海思Hi3559A平台移植 opencv4 0 0 2018年12月26日 09 51 53 xclshwd 阅读数 370 版
  • Jetpack学习之WorkManager

    绝大部分应用程序都有在后台执行任务的需求 根据需求的不同 Android为后台任务提供了多种解决方案 如JobScheduler Loader Service等 WorkManager为应用程序中那些不需要及时完成的任务提供了一个统一的解决
  • 基于MATLAB的图像压缩感知

    一 课题背景 数据压缩技术是提高无线数据传输速度的有效措施之一 传统的数据压缩技术是基于奈奎斯特采样定律进行采样 并根据数据本身的特性降低其冗余度 从而达到压缩的目的 近年来出现的压缩感知理论 Compressed Sensing CS 则
  • 将参数字符串中的字符反向排列,不是逆序打印。

    小题分享 定义一个字符串 abcdef 封装一个函数使他反向排列 不是逆序打印 我们很容易就能想到一种方法 采用循环的方式互换首尾的元素 void reverse char str int left 0 int right strlen s
  • 廊坊师范学院IT提高班,你真正了解多少?

    最近在csdn博文中经常看到博友们问 什么是提高班 更有人对提高班怀有疑惑 or 不理解 廊坊师范学院信息技术提高班到底是怎样的一个地方 你对这个地方又有怎样的认识 你对这个地方是否怀有一份好奇心呢 让这篇文章解开你心中的某些疑惑吧 我一个
  • Node.js使用session或JWT机制登录验证教程

    Session实现代码 Session 对象存储特定用户会话所需的属性及配置信息 这样 当用户在应用程序的 Web 页之间跳转时 存储在 Session 对象中的变量将不会丢失 而是在整个用户会话中一直存在下去 当用户请求来自应用程序的 W
  • 小程序中实现点击切换不同组件的效果

    前言 小程序中实现点击切换不同页面的组件效果 实现效果 实现步骤 第一 分别建立三个页面的文件夹以及他们的相关文件 第二 index模块中 index wxml