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

微信小程序学习笔记3.0

第3章 资讯类:仿今日头条微信小程序

3.1 需求描述及交互分析

需求描述

仿今日头条微信小程序,要具有以下功能。

(1)首页新闻频道框架设计,包括底部标签导航设计、新闻检索框设计及新闻频道滑动效果设计。

(2)首页新闻内容设计,包括新闻标题、新闻图片及新闻评论设计。

(3)首页新闻详情页设计,显示新闻的详细内容包括标题、发布人、发布时间、正文内容及底部评论区域。

(4) “我的”界面列表式导航设计,采用列表式导航来设计我的界面,同时作为二级界面的导航。

(5)系统设置二级界面设计。

交互分析

(1)首页、我的底部标签导航,单击不同标签导航,显示对应的导航内容界面;

(2)新闻频道滑动效果设计,新闻频道可以向左向右滑动,单击不同的新闻频道可以显示对应新闻频道内容;

(3)首页新闻内容可以点击进去查看完整的新闻内容,展示新闻的标题、发布人、发布时间以及正文等等新闻内容;

(4)我的界面采用列表式导航设计,通过猎豹式导航可以进入到二级界面;

3.2设计思路以及相关知识点

设计思路

(1)设计底部标签导航,准备好底部导航的图标和建立相应的两个页面;

2)设计新闻频道滑动效果,需要借助于scroll-view可滚动视图容器组件,允许水平方向上进行滑动;

3)设计新闻频道页签切换效果,单击新闻频道页签,显示相应的内容;

4)设计首页新闻内容列表,设计新闻的标题样式、图片的显示以及评论;

5)设计首页新闻详情界面设计,新闻标题、发布人、发布时间、关注、正文内容已经评论区域;

6)设计我的界面,获取账号信息以及采用列表式导航进行设计;

相关知识点

1app.json配置,这个文件来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置底部标签导航、开启debug开发模式;

2)scroll-view可滚动视图区域组件,采用这个组件可以运行水平方向上或者垂直方向上进行滚动,来实现新闻频道滑动效果设计;

注:使用竖向滚动时,需要给<scroll-view/>一个固定高度,通过WXSS 设置height值;不要在scroll-view中使用textarea、map、canvas、video 组件;scroll-into-view 的优先级高于scroll-top。 

3)swiper滑块视图容器组件,可以实现海报轮播效果动态展示以及页签内容切换效果;

4view视图容器组件,用来进行界面的布局、image图片组件用来展示图片信息;

5)input输入框组件,用来输入单行文本内容;

6)获取账号信息,使用app.getUserInfo函数来获取账户信息;

    var  app  =  getApp()Page({data:{motto: ’欢迎’,userInfo: {}},onLoad:function(options){console.log( 'onLoad' )var that = this;//调用应用实例的方法获取全局数据app.getUserInfo(  function(  userInfo  )  {//更新数据that.setData(  {userInfo:  userInfo})})},setting:function(){wx.navigateTo({url: '../setting/setting'})}})

7wx.navigateTo保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面;

3.3新闻频道滑动效果设计

首页新闻频道框架设计,先来设计首页的底部标签导航,即“首页”和“我的”两个标签导航,选中时图标和导航名称变为红色;再设计顶部的搜索区域,友好提示“搜你想要的”;最后设计新闻频道滑动效果,本例有多个新闻频道,可以设置成水平方向上滑动。

3.3.1底部标签导航设计

仿今日头条微信小程序,底部标签导航分为两个,标签导航选中时导航图标会变为红色图标,导航文字会变为红色文字

设计底部标签导航选中效果的具体操作步骤如下:

  1. 新建一个仿今日头条微信小程序项目
  2. 将准备好的底部标签导航图标及界面中图片图标所在的images文件夹复制到项目根目录下。
  3. 打开app.json配置文件,在pages数组中添加一个页面路径"pages/me/me",保存后会自动生成相应的页面文件夹;删除"pages/logs/logs"页面路径及对应的文件夹
  4.  在window数组中配置窗口导航背景颜色为红色(#D53C3E)、导航栏文字为“今日头条”,字体颜色设置为白色(white)
  5. 在tabBar对象中配置底部标签导航背景色为灰色(#F9F9F9)、文字默认颜色为深灰色、选中时为红色(#D53C3E),在list数组中配置底部标签导航对应的页面、导航名称、默认时图标、选中时图标

 这个错误是因为在 app.json 文件中的 tabBar 部分的 iconPathselectedIconPath 属性包含了 ../ 路径。在小程序开发中,通常不允许使用 ../ 来引用上级目录中的文件。需要确保这些路径是相对于 app.json 文件的位置的相对路径,或者是绝对路径。

标签导航很多移动APP都会采用的一种导航方式。

怎么制作标签导航?需要在app.json文件里配置tabBar属性。tabBar是一个对象,它可以配置标签导航文字默认颜色、选中时的颜色,标签导航背景色及上边框颜色。上边框颜色现在可以配置两种颜色:black/white。标签导航存放到list数组里面,list里的每个对象对应一个标签导航,每个对象里可以配置标签导航的跳转页面路径、导航名称、默认时的路标及选中时的图标。

  "tabBar": {"selectedColor":"#D53C3E",  //标签导航选中时的文字颜色"borderStyle": "black",     //标签导航上边框颜色"backgroundColor":"#F9F9F9",//标签导航背景色"list": [{"pagePath": "pages/index/index",//跳转页面路径"text": "首页",                 //标签导航名称"iconPath": "/images/bar/index-0.jpg",//默认时的图标"selectedIconPath": "/images/bar/index-1.jpg"//选中时的图标},{"pagePath": "pages/me/me","text": "我的","iconPath":"/images/bar/me-0.jpg","selectedIconPath": "/images/bar/me-1.jpg"

相关文章:

微信小程序学习笔记3.0

第3章 资讯类:仿今日头条微信小程序 3.1 需求描述及交互分析 需求描述 仿今日头条微信小程序,要具有以下功能。 (1)首页新闻频道框架设计,包括底部标签导航设计、新闻检索框设计及新闻频道滑动效果设计。 (2)首页新闻内容设计,包括新闻标题、新闻图片及新闻评论设计…...

nginx 反向代理 负载均衡 动静分离

一样东西的诞生通常都是为了解决某些问题&#xff0c;对于 Nginx 而言&#xff0c;也是如此。 比如&#xff0c;你出于无聊写了一个小网站&#xff0c;部署到 tomcat 之后可以正常访问 但是后来&#xff0c;你的这个小网站因为内容很诱人逐步的火了&#xff0c;用户越来越多&a…...

Codeanalysis(tca)后端二次开发环境搭建

先试用官方脚本文件件quick_install.sh将整个项目启动起来&#xff0c;然后到每个微服务下查看每个服务的pid进程&#xff0c;需要调试哪个先把对应的微服务关闭手动启动&#xff0c;具体启动流程如下&#xff1a; cd 到项目根目录下 source script\config.sh # 激活系统环境…...

JS前端树形Tree数据结构使用

前端开发中会经常用到树形结构数据&#xff0c;如多级菜单、商品的多级分类等。数据库的设计和存储都是扁平结构&#xff0c;就会用到各种Tree树结构的转换操作&#xff0c;本文就尝试全面总结一下。 如下示例数据&#xff0c;关键字段id为唯一标识&#xff0c;pid为父级id&am…...

Automation Anywhere推出新的生成式AI自动化平台,加速提高企业生产力

在9 月 19 日的Imagine 2023 大会上&#xff0c;智能自动化领域的领导者 Automation Anywhere 宣布对其自动化平台进行扩展。推出了新的 Responsible AI Layer&#xff0c;并宣布了四项关键产品更新&#xff0c;包括全新的 Autopilot&#xff0c;它可以利用生成式 AI &#xff…...

电缆隧道在线监测系统:提升电力设施安全与效率的关键

随着城市化进程的加快&#xff0c;电力电缆隧道在保障城市电力供应方面的地位日益重要。然而&#xff0c;电缆隧道环境复杂&#xff0c;容易受到多种因素影响&#xff0c;如温度、湿度、烟雾、水位等&#xff0c;严重威胁电力设施的安全与稳定运行。在此背景下&#xff0c;电缆…...

Java BigDecimal 详解

目录 一、BigDecimal 1、简介 2、构造器描述 3、方法描述 4、使用 一、BigDecimal float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算&#xff0c;这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而&#xff0c;它…...

简述信息论与采样定理

信息论 香农信息论发表于1948/1949年&#xff0c;它由三部分组成&#xff1a;信号采样、信源编码、信道编码&#xff1b; 信号采样&#xff1a;采样理论研究在何种条件下对连续信号进行采样&#xff0c;从而得到的离散型号可以可逆地恢复出采样前的连续信号。采样得到的离散实…...

网络安全之网站常见的攻击方式

这是作者自学的哈&#xff0c;不算课程内容。 网页中出现大量黑链 网站看着很正常&#xff0c;但是会隐藏一些链接。网页的链接几乎都是标签&#xff0c;这种黑链就是通过链接标签<a></a>或者script在里面链入恶意脚本&#xff0c;等待浏览者的访问&#xff0c;通…...

iOS Swift 拍照识别数字(Recognizing Text in Images)

可以用腾讯云 OCR的iOS demo - 腾讯云 苹果官方的解决方案&#xff08;识别度太低&#xff09; Recognizing Text in Images - apple developer Extracting phone numbers from text in images(Sample Code) - apple developer import UIKit import Visionclass ViewContro…...

数学建模:智能优化算法及其python实现

数学建模:智能优化算法及其python实现 智能优化算法简介差分进化算法(Differential Evolution,DE)遗传算法(Genetic Algorithm,GA)粒子群优化算法(Particle Swarm Optimization,PSO)模拟退火算法(Simulated Annealing,SA)蚁群算法(Ant Colony Optimization,ACO)…...

monkeyrunner环境搭建和初步用法

一、打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器&#xff0c;不然monkeyrunner无法连接设备。 用Elipse打开Android模拟器或在CMD中用Android命令打开模拟器。这里重点讲一下在CMD中用Android命令打开模拟器 命令&#xff1a;emulator -avd test &#xff08;注…...

2024华为校招面试真题汇总及其解答(一)

1. 我问你点java基础的问题吧,你平时都用什么集合啊,都什么情况下使用 在 Java 中,常用的集合有以下几种: List:有序集合,可以重复,常用实现类有 ArrayList、LinkedList、Vector。Set:无序集合,不能重复,常用实现类有 HashSet、TreeSet。Map:键值对集合,键不能重复…...

css调整字体间距 以及让倾斜字体

调整字体间距 .element {letter-spacing: 2px; /* 调整为适当的值 */ }倾斜字体1 .element {font-style: italic; }请注意&#xff0c;不是所有的字体都有斜体样式可用。如果字体本身没有斜体版本&#xff0c;则可能无法实现完全的斜体效果。 倾斜字体2 <span class"…...

工具篇 | Gradle入门与使用指南 - 附Github仓库地址

介绍 1.1 什么是Gradle&#xff1f; Gradle是一个开源构建自动化工具&#xff0c;专为大型项目设计。它基于DSL&#xff08;领域特定语言&#xff09;编写&#xff0c;该语言是用Groovy编写的&#xff0c;使得构建脚本更加简洁和强大。Gradle不仅可以构建Java应用程序&#x…...

使用 Python 函数callable和isinstance的意义

一、说明 在这篇博客中&#xff0c;我们将探讨两个python函数&#xff1a;1 callable 中的函数及其有趣的应用程序。该callable函数用于检查对象是否可调用&#xff0c;这意味着它可以作为函数调用。2 isinstance这个内置函数允许我们比较两种不同的数据类型并确定它们是否相…...

Netty场景及其原理

Netty场景及其原理 Netty简化Java NIO的类库的使用&#xff0c;包括Selector、 ServerSocketChannel、 SocketChannel、ByteBuffer&#xff0c;解决了断线重连、 网络闪断、心跳处理、半包读写、 网络拥塞和异常流的处理等。Netty拥有高性能、 吞吐量更高&#xff0c;延迟更低…...

Java接口和接口继承

Java接口和接口继承 接口 在抽象类中&#xff0c;抽象方法本质上是定义接口规范&#xff0c;即规定高层类的接口&#xff0c;从而保证所有子类都有相同的接口实现&#xff0c;这样&#xff0c;多态就能发挥出威力。 如果一个抽象类没有字段&#xff0c;所有方法全部都是抽象方…...

2023 年解锁网络安全即服务

在当今快速发展的数字世界中&#xff0c;强大的网络安全机制的重要性怎么强调都不为过。对于越来越多地发现自己成为网络威胁焦点的小型企业来说尤其如此。 那么&#xff0c;“网络安全即服务”到底是什么&#xff1f;为什么它对小型企业至关重要&#xff1f; 网络安全即服务…...

python基于轻量级卷积神经网络模型GhostNet开发构建养殖场景下生猪行为识别系统

养殖业的数字化和智能化是一个综合应用了互联网、物联网、人工智能、大数据、云计算、区块链等数字技术的过程&#xff0c;旨在提高养殖效率、提升产品质量以及促进产业升级。在这个过程中&#xff0c;养殖生猪的数字化智能化可以识别并管理猪的行为。通过数字化智能化系统&…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

Cinnamon修改面板小工具图标

Cinnamon开始菜单-CSDN博客 设置模块都是做好的&#xff0c;比GNOME简单得多&#xff01; 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时&#xff0c;显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐&#xff1a;「storms…...

算法—栈系列

一&#xff1a;删除字符串中的所有相邻重复项 class Solution { public:string removeDuplicates(string s) {stack<char> st;for(int i 0; i < s.size(); i){char target s[i];if(!st.empty() && target st.top())st.pop();elsest.push(s[i]);}string ret…...

云原生时代的系统设计:架构转型的战略支点

&#x1f4dd;个人主页&#x1f339;&#xff1a;一ge科研小菜鸡-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 一、云原生的崛起&#xff1a;技术趋势与现实需求的交汇 随着企业业务的互联网化、全球化、智能化持续加深&#xff0c;传统的 I…...