【Vue3】知识汇总,附详细定义和源码详解,后续出微信小程序项目(2)
====================
快速跳转:
我的个人博客主页👉:Reuuse博客
新开专栏👉:Vue3专栏
参考文献👉:uniapp官网
❀ 感谢支持!☀
==================
前情提要
🔺因为最近学习的vue语言,发现有很多细节的碎块需要汇总,所以就有了本次系列的开始。❀❀❀
⭐总结的知识会包含总结定义,和源代码解析,可以当作类似于英语单词一样瞄几眼,大概知道即可
那么话不多说我们开始吧
vue
- 前情提要
- pages设置页面路径及窗口表现
- easycom 组件自动引入规则
- taBar设置底部菜单选项jiiconfont图标
pages设置页面路径及窗口表现
之前讲的是全局配置的话,这个就是页面配置

分别由三个属性:
- path 路径
- style 当globalStyle设置,那么页面的权重会覆盖全局

- needLogin 判断是否登陆后才可以访问

以上三个属性中,style格外重要,我们详细看:
🔺pages设置页面路径及窗口表现涉及的知识点包括页面管理、窗口样式和配置项等。
-
页面管理:通过
pages节点接收一个数组,指定应用由哪些页面组成,每个页面包含一个path和一个style属性。 -
窗口样式:
globalStyle用于设置应用的状态栏、导航条、标题、窗口背景色等,而pages.style则用于设置每个页面的状态栏、导航条、标题、窗口背景色等。 -
配置项:
tabBar用于设置底部tab的表现和condition用于启动模式配置,这些配置项在开发期间生效,用于模拟直达页面的场景。 -
分包机制:由于小程序平台的限制和优化启动速度的需要,可能会用到分包机制,如subPackages和preloadRule,以优化小程序的下载和启动速度。
总的来说,pages.json文件是uni-app中用于全局配置的重要文件,它决定了页面文件的路径、窗口表现、原生的导航栏、底部的原生tabbar等。
以下是一个包含了所有配置选项的 pages.json :👇
{"pages": [{"path": "pages/component/index","style": {"navigationBarTitleText": "组件"}}, {"path": "pages/API/index","style": {"navigationBarTitleText": "接口"}}, {"path": "pages/component/view/index","style": {"navigationBarTitleText": "view"}}],"condition": { //模式配置,仅开发期间生效"current": 0, //当前激活的模式(list 的索引项)"list": [{"name": "test", //模式名称"path": "pages/component/view/index" //启动页面,必选}]},"globalStyle": {"navigationBarTextStyle": "black","navigationBarTitleText": "演示","navigationBarBackgroundColor": "#F8F8F8","backgroundColor": "#F8F8F8","usingComponents":{"collapse-tree-item":"/components/collapse-tree-item"},"renderingMode": "seperated", // 仅微信小程序,webrtc 无法正常时尝试强制关闭同层渲染"pageOrientation": "portrait", //横屏配置,全局屏幕旋转设置(仅 APP/微信/QQ小程序),支持 auto / portrait / landscape"rpxCalcMaxDeviceWidth": 960,"rpxCalcBaseDeviceWidth": 375,"rpxCalcIncludeWidth": 750},"tabBar": {"color": "#7A7E83","selectedColor": "#3cc51f","borderStyle": "black","backgroundColor": "#ffffff","height": "50px","fontSize": "10px","iconWidth": "24px","spacing": "3px","iconfontSrc":"static/iconfont.ttf", // app tabbar 字体.ttf文件路径 app 3.4.4+"list": [{"pagePath": "pages/component/index","iconPath": "static/image/icon_component.png","selectedIconPath": "static/image/icon_component_HL.png","text": "组件","iconfont": { // 优先级高于 iconPath,该属性依赖 tabbar 根节点的 iconfontSrc"text": "\ue102","selectedText": "\ue103","fontSize": "17px","color": "#000000","selectedColor": "#0000ff"}}, {"pagePath": "pages/API/index","iconPath": "static/image/icon_API.png","selectedIconPath": "static/image/icon_API_HL.png","text": "接口"}],"midButton": {"width": "80px","height": "50px","text": "文字","iconPath": "static/image/midButton_iconPath.png","iconWidth": "24px","backgroundImage": "static/image/midButton_backgroundImage.png"}},"easycom": {"autoscan": true, //是否自动扫描组件"custom": {//自定义扫描规则"^uni-(.*)": "@/components/uni-$1.vue"}},"topWindow": {"path": "responsive/top-window.vue","style": {"height": "44px"}},"leftWindow": {"path": "responsive/left-window.vue","style": {"width": "300px"}},"rightWindow": {"path": "responsive/right-window.vue","style": {"width": "300px"},"matchMedia": {"minWidth": 768}}
}
还是有一些不太明白?那么给一个例句吧:

- “navigationBarBackgroundColor”: “#2B9939” 表示导航栏的背景颜色是绿色(#2B9939)。
- “navigationBarTextStyle”: “white” 表示导航栏的文字颜色是白色。
- “navigationBarTitleText”: “二攸时” 表示导航栏的标题文字是“二攸时”。
- “backgroundColor”: “#ccc” 表示背景颜色是灰色(#ccc)。
- “backgroundTextStyle”: “light” 表示背景文字的颜色是浅色。
- “onReachBottomDistance”: 50 表示当页面滚动到底部时,触发的距离是50像素。
easycom 组件自动引入规则
传统vue组件,需要安装、引用、注册,三个步骤后才能使用组件。easycom将其精简为一步。
没什么别的,只要注意路径规范:
- 安装在项目根目录的components目录下,并符合
components/组件名称/组件名称.vue - 安装在uni_modules下,路径为uni_modules/插件
ID/components/组件名称/组件名称.vue
<template><view class="container"><comp-a></comp-a><uni-list></uni-list></view>
</template>
<script>// 这里不用import引入,//也不需要在components内注册uni-list组件//template里就可以直接用export default {data() {return {}}}
</script>
taBar设置底部菜单选项jiiconfont图标
- taBar 简单来说就是设置底部的导航栏

直接上代码吧!
"tabBar": {//默认颜色 被选中时候的颜色"color": "#999", "selectedColor": "#FE1C32","borderStyle": "white","list": [{"pagePath": "pages/index/index","text": "首页"},{"pagePath": "pages/classify/classify","text": "分类"},{"pagePath": "pages/user/user""text": "我的"}]},
得出结果如下👇:

🌼那么今天就到这里吧!
▲这次的知识汇总框架只是一次尝试,后续会陆续跟新vue系列。再后来会逐渐成熟,向大家展现更简洁明了的知识汇总!
一个小小的赞是对我最大的鼓励!
感谢你们看到这里,下次见~

相关文章:
【Vue3】知识汇总,附详细定义和源码详解,后续出微信小程序项目(2)
快速跳转: 我的个人博客主页👉:Reuuse博客 新开专栏👉:Vue3专栏 参考文献👉:uniapp官网 ❀ 感谢支持!☀ 前情提要 🔺因为最近学习的vue语言,发现有很多细节…...
uniapp中使用全局样式文件引入的三种方式
如果你想在 uni-app 中全局引入 SCSS 文件(例如 global.scss),可以通过以下步骤进行配置: 方法一:在 main.js 中引入 在 main.js 中引入全局样式: 你可以在 src/main.js 文件中直接引入 SCSS 文件ÿ…...
计算机网络易混淆知识点串记
文章目录 计算机网络易混淆知识点串记各层PDU首部: 计算机网络易混淆知识点串记 各层PDU首部: PUD首部长度 (B:字节)首部单位数据链路–帧帧首:14B帧尾部:4B——IPV420~60字节4B [通过4位二进制表示]IPV6固定首部40字节[可拓展]4BTCP20~60字节4BUDP8B字节...
Java代码审计-模板注入漏洞
一、模板引擎 在Java开发当中,为了将前端和后端进行分离,降低项目代码的耦合性,使代码更加易于维护和管理。除去以上的原因,模板引擎还能实现动态和静态数据的分离。 二、主流模板引擎 在Java中,主流的模板引擎有:Fre…...
如何在Linux中使用Cron定时执行SQL任务
文章目录 前言一、方案分析二、使用步骤1.准备脚本2.crontab脚本执行 踩坑 前言 演示数据需要每天更新监控数据,不想手动执行,想到以下解决方案 navicat 创建定时任务java服务定时执行linux crontab 定时执行sql脚本 一、方案分析 我选择了第三个方案…...
数据集划分
1、 sklearn玩具数据集介绍 数据量小,数据在sklearn库的本地,只要安装了sklearn,不用上网就可以获取 2 sklearn现实世界数据集介绍 数据量大,数据只能通过网络获取(科学上网) 3 sklearn加载玩具数据集 示…...
带你读懂什么是AI Agent智能体
一、智能体的定义与特性 定义:智能体是一个使用大语言模型(LLM)来决定应用程序控制流的系统。然而,智能体的定义并不唯一,不同人有不同的看法。Langchain的创始人Harrison Chase从技术角度给出了定义,但更…...
react动态路由
在React应用中,动态路由(Dynamic Routing)通常指的是根据应用的状态或用户的交互来动态地显示或隐藏路由(页面或组件)。这可以通过多种方法实现,包括使用React Router库,它提供了强大的路由管理…...
Linux基础(十四)——BASH
BASH 1.BASH定义2.shell的种类3.bash的功能3.1 命令记录功能3.2 命令补全功能3.3 命令别名设置3.4 工作控制、 前景背景控制3.5 程序化脚本: ( shell scripts)3.6 万用字符 4.bash的内置命令5.shell的变量功能5.1 变量的取用5.2 新建变量5.3 …...
架构师备考-概念背诵(系统架构)
软件架构概念 一个程序和计算系统软件体系结构是指系统的一个或者多个结构。结构中包括软件的构件,构件的外部可见属性以及它们之间的相互关系。体系结构并非可运行软件。确切地说,它是一种表达,使软件工程师能够: (1)分析设计在满足所规定的需求方面的有效性:(2)在设计变…...
如何让ffmpeg运行时从当前目录加载库,而不是从/lib64
程序在linux下运行时,一般从 /lib64 目录下加载依赖的库文件,如xxx.so. 有时候,系统里没有这些库,也不想从系统目录下加载,怎么办呢? 看下面的调整过程。 使用的源代码是 ffmpeg-6.1.tar.xz 解压后&…...
Kafka-Controller选举
一、上下文 《Kafka-broker粗粒度启动流程》博客中我们分析了broker的大致启动流程,这个时候每个broker都不是controller角色,下面我们就来看下它是如何选举出来的吧 二、设置ZooKeeper ZooKeeper是一个开源的分布式协调服务,主要用于分…...
必知的 Vue3 组件传值技巧:解锁组件交互新姿势
父传子defineProps 基本概念 在 Vue 3 中,父传子是一种组件间通信的方式,用于将父组件的数据传递给子组件。这种通信方式可以让组件之间更好地协作,实现功能的复用和模块的划分。 实现步骤 在父组件中传递数据 App.vue <template>…...
【论文阅读】医学SAM适配器:适应医学图像分割的任意分割模型
【论文阅读】医学SAM适配器:适应医学图像分割的任意分割模型 文章目录 【论文阅读】医学SAM适配器:适应医学图像分割的任意分割模型一、介绍二、联系工作三、方法四、实验 Medical SAM Adapter: Adapting Segment Anything Model for Medical Image Segm…...
创新体验触手可及 紫光展锐携手影目科技推出AI眼镜开放平台
近日,紫光展锐携手影目科技共同发布了搭载展锐W517芯片的影目X系列AI眼镜开放平台。这一产品的推出标志着双方在智能穿戴领域的深度协作,将紫光展锐的领先芯片技术与影目的产品创新相融合,合力打造全球智能眼镜市场的标杆产品。这一战略布局不…...
115页PDF | 埃森哲_XX集团信息化能力成熟度评估及能力提升方案(限免下载)
一、前言 这份报告是埃森哲_XX集团信息化能力成熟度评估及能力提升方案,报告首先分析了集团的战略规划,包括调整优化期、转型升级期和跨越发展期的目标,然后识别了集团面临的内部挑战和外部压力,如管控体系不完善、业务板块多样化…...
NumPy,科学计算领域中的Python明星库!
NumPy,科学计算领域中的Python明星库! 嘿,大家好呀,今天我们要来聊聊在科学计算领域里大放异彩的 NumPy 库。NumPy 是 Python 中的一个开源库,它提供了大量的数学函数,能够高效地处理大型数组与矩阵运算。…...
Hadoop生态圈框架部署(六)- HBase完全分布式部署
文章目录 前言一、Hbase完全分布式部署(手动部署)1. 下载Hbase2. 上传安装包3. 解压HBase安装包4. 配置HBase配置文件4.1 修改hbase-env.sh配置文件4.2 修改hbase-site.xml配置文件4.3 修改regionservers配置文件4.4 删除hbase中slf4j-reload4j-1.7.33.j…...
python怎么解决中文注释
最近开发学习Python,当加入中文注释时,运行程序报错: File "red.py", line 10 SyntaxError: Non-ASCII character \xe5 in file red.py on line 10, but no encoding declared; see http://www.python.org/peps/pep-0263.html fo…...
【Unity】Game Framework框架学习使用
前言 之前用过一段时间的Game Framework框架,后来有那么一段时间都做定制小软件,框架就没再怎么使用了。 现在要做大型项目了,感觉还是用框架好一些。于是又把Game Framework拾起来了。 这篇文章主要是讲Game Framework这个框架是怎么用的…...
收藏!小白程序员必看:如何用RAG让大模型秒变“知识达人”
大模型虽强但知识易过时且难接入私有信息。RAG通过检索增强生成,为模型加装“搜索引擎”和“知识库”,解决时效性、私有数据接入和答案追溯问题。RAG分为朴素、高级、模块化及智能体阶段,对AI初学者而言,它是让大模型落地企业场景…...
一次业务接口性能评估的总结
一次业务接口性能评估的总结 本篇文章是我在项目中对一个业务接口做性能评估时,对一些问题的思考和相关知识点系统性回顾拾遗的一个总结。 业务背景 我们项目中的一个文件上传接口,主要业务功能是接收第三方渠道端上传的base64编码影像文件和相关业务数据…...
LLM推理解耦技术:提升大型语言模型推理效率的关键方法
1. LLM推理解耦技术概述在大型语言模型(LLM)推理服务领域,推理解耦(Inference Disaggregation)正成为突破传统性能瓶颈的关键技术路径。这项技术的核心思想是将原本耦合的推理流程拆分为具有不同计算特征的独立阶段&am…...
Unity入门:从创建立方体理解组件化三维工作流
1. 这不是“Hello World”,而是你和Unity第一次真正握手很多人点开Unity安装包那一刻,以为接下来就是拖拽、点击、三分钟出效果——结果新建项目后面对空荡荡的Scene视图和一堆灰色面板,连“立方体在哪”都找不到。我带过三十多期Unity新手训…...
Keil C251中RTX251配置错误解决方案
1. RTX251配置错误问题解析与修复指南最近在使用Keil C251开发工具时,遇到了一个典型的RTX251实时操作系统配置问题。当尝试编译TRAFFIC2、SAMPLE或INTRPT示例项目时,系统在汇编RTXCONF.A51文件时抛出了大量"UNDEFINED SYMBOL"错误。这个问题困…...
别再为乱码头疼了!Linux离线安装LibreOffice 7.5完整指南:从RPM包到完美中文显示
Linux离线安装LibreOffice 7.5终极指南:彻底解决中文乱码难题 在Linux环境下处理中文文档时,字体显示问题就像一场无声的战争——你永远不知道打开文件时会遭遇怎样的"乱码突袭"。特别是对于需要离线安装LibreOffice的用户,这个问题…...
量子机器学习在时间序列预测中的性能基准研究与实践复盘
1. 量子机器学习与时间序列预测:一次深度基准研究的实践复盘最近几年,量子机器学习(QML)的热度居高不下,尤其是在变分量子算法(VQA)的框架下,大家总在讨论它能否在特定任务上超越经典…...
Atomic Layout嵌套布局最佳实践:构建复杂UI系统的完整指南
Atomic Layout嵌套布局最佳实践:构建复杂UI系统的完整指南 【免费下载链接】atomic-layout Build declarative, responsive layouts in React using CSS Grid. 项目地址: https://gitcode.com/gh_mirrors/at/atomic-layout Atomic Layout是一个基于React的声…...
基于ArUco标记的毫米波反射镜自主对准系统设计与实现
1. 项目概述在5G/6G通信时代,毫米波(mmWave)技术凭借其超大带宽和超低延迟特性,成为实现千兆级无线传输的关键技术。然而,毫米波信号在非视距(NLOS)环境中的快速衰减问题,一直是制约其实际部署的主要瓶颈。传统解决方案如可重构智…...
Codex入门18-批量文件操作(效率神器:一句话批量重命名、格式化、清理几百个文件)
Codex入门18-批量文件操作(效率神器:一句话批量重命名、格式化、清理几百个文件) 📌 文章简介:手动改100个文件名?逐个格式化代码?一个个加版权声明?这些重复劳动该结束了。本文带你用 Codex CLI 一句话搞定批量重命名、批量格式化、批量添加文件头注释、批量清理垃圾…...
