2-认识小程序项目

news/2024/7/20 2:26:55 标签: 小程序

基本结构

  myapp
	├─miniprogram
	┊  └──pages
	┊  ┊  └──index
	┊  ┊  ┊  ├──index.json
	┊  ┊  ┊  ├──index.ts
	┊  ┊  ┊  ├──index.wxml
	┊  ┊  ┊  └──index.wxss
	┊  ┊  └──logs
	┊  ┊     ├──index.json
	┊  ┊     ├──index.ts
	┊  ┊     ├──index.wxml
	┊  ┊     └──index.wxss
	┊  ├───utils
	┊  ┊  └──util.ts
	┊  ├──app.json
	┊  ├──app.ts
	┊  ├──app.wxss
	┊  └──sitemap.json
	└── typings
       └──.eslintrc.js
       ├──package.json
       ├──project.config.json
       ├──project.private.config.json
       └──tsconfig.json
  • pages用来存放所以小程序界面
  • utlis用来存放工具性质的模块
  • app.ts小程序的入口文件
  • app.json小程序的全局配置文件
  • app.wxss小程序的全局样式文件
  • project.config.json项目配置文件
  • sitemap.json用来配置小程序及其页面是否允许被微信索引

pages

小程序官方间隙把小程序页面存放在pages目录,以单独的文件夹存在
在这里插入图片描述

  • .js页面脚本文件,存放页面数据、事件处理函数
  • .json当前页面配置文件,配置外观
  • .wxml页面结构文件
  • .wxss页面样式表文件

json配置文件

小程序项目中有四种配置文件

1. 项目根目录中app.json配置文件

官网入口api

当前小程序全局配置包括小程序所有页面路径、窗口外观、界面表现、底部tab等。默认app.json配置如下

{
  //记录当前小程序所有页面路径
  "pages": [
    "pages/index/index",
    "pages/logs/logs"
  ],
  //全局定义小程序所以页面背景色文字等
  "window": {
    "navigationBarTextStyle": "black",
    "navigationStyle": "custom"
  },
  //全局定义小程序所有组件使用的样式版本
  //v2默认为最新版本,删除style表示使用旧的版本
  "style": "v2",
  "rendererOptions": {
    "skyline": {
      "defaultDisplayBlock": true,
      "disableABTest": true,
      "sdkVersionBegin": "3.0.0",
      "sdkVersionEnd": "15.255.255"
    }
  },
  "componentFramework": "glass-easel",
  //指明sitemap.json的位置
  "sitemapLocation": "sitemap.json",
  "lazyCodeLoading": "requiredComponents"
}

2. typings目录中project.config.json project.private.config.json配置文件

project.config.json项目配置文件,用来记录我们小程序开发工具所做的个性化配置
project.private.config.json项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。

{
  "description": "项目配置文件",
  "miniprogramRoot": "miniprogram/",
  "compileType": "miniprogram",
  //编译相关配置
  "setting": {
    "useCompilerPlugins": [
      "typescript"
    ],
    "babelSetting": {
      "ignore": [],
      "disablePlugins": [],
      "outputPath": ""
    },
    "coverView": false,
    "postcss": false,
    "minified": false,
    "enhance": false,
    "showShadowRootInWxmlPanel": false,
    "packNpmRelationList": [],
    "ignoreUploadUnusedFiles": true,
    "compileHotReLoad": false,
    "skylineRenderEnable": true,
    "condition": false
  },
  "simulatorType": "wechat",
  "simulatorPluginLibVersion": {},
  "condition": {},
  "srcMiniprogramRoot": "miniprogram/",
  "editorSetting": {
    "tabIndent": "insertSpaces",
    "tabSize": 2
  },
  "libVersion": "2.32.3",
  "packOptions": {
    "ignore": [],
    "include": []
  },
  //小程序帐号id
  "appid": "wxeebf7ff270e81f02"
}

setting配置项可以在本地配置中开启或关闭
在这里插入图片描述

3. 项目根目录中sitemap.json配置文件

官网入口

微信现以开放小程序内搜索,类似于pc网页的SEO。sitemap.json用来配置微信小程序页面是否允许微信索引

4. pages目录中每个页面文件夹.json配置文件

.json文件对本页面窗口外观进行配置,页面配置项会覆盖app.json中的相同配置项

小程序页面

app.json->pages中新增页面存放路径,小程序开发工具会自动创建对应的页面文件
在这里插入图片描述
app.json->pages配置项中默认第一个位项目首页
在这里插入图片描述

WXML模版

官网入口
WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。作用类似网页开发的HTML

标签名称差异

HTML (div,span,img,a)
WXML (view,text,image,navigator)

属性节点差异

<a href="#"></a>
<navigator url="pages/index/index"></navigator>

类似vue模版语法

官网入口

  • 数据绑定
  • 列表渲染
  • 条件渲染
  • 模版
  • 引用

WXSS模版

官网入口
WXSS (WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式。

WXSS 用来决定 WXML 的组件应该怎么显示。

为了适应广大的前端开发者,WXSS 具有 CSS 大部分特性。同时为了更适合开发微信小程序,WXSS 对 CSS 进行了扩充以及修改。

与 CSS 相比,WXSS 扩展的特性有:

尺寸单位

rpx尺寸单位

css需要手段进行像素单位换算 如rem
wxss新的尺寸耽误rpx在不同屏幕上小程序会自动换算

样式导入

使用@import语句可以导入外联样式表,
@import后跟需要导入的外联样式表的相对路径,
用;表示语句结束。

全局样式与局部样式

定义在 app.wxss 中的样式为全局样式,作用于每一个页面。在 page 的 wxss
文件中定义的样式为局部样式,只作用在对应的页面,并会覆盖 app.wxss 中相同的选择器。


http://www.niftyadmin.cn/n/5320407.html

相关文章

【自控实验】3. 带有饱和非线性环节控制系统相平面分析

本科课程实验报告&#xff0c;有太多公式和图片了&#xff0c;干脆直接转成图片了 仅分享和记录&#xff0c;不保证全对 实验内容&#xff1a; 有无非线性环节的相轨迹对比&#xff0c;并求超调量。 在输入单位阶跃信号Xsr时&#xff0c;用示波器观察和记录系统输入饱和非线…

如何解决TCP拥塞问题?

目录 流量控制 流量整形和限速 拥塞感知和路由优化 负载均衡 网络优化 流量控制 加强网络质量管理&#xff0c;例如提高宽带、加速网络、限制宽带占用、 实施流量控制机制&#xff0c;如拥塞控制算法&#xff0c;通过动态调整数据包发送速率来避免网络拥塞。 使用拥塞避…

Python 网络数据采集(四):Selenium 自动化

Python 网络数据采集&#xff08;四&#xff09;&#xff1a;Selenium 自动化 前言一、背景知识Selenium 4Selenium WebDriver 二、Selenium WebDriver 的安装与配置2.1 下载 Chrome 浏览器的驱动程序2.2 配置环境变量三、Python 安装 Selenium四、页面元素定位4.1 选择浏览器开…

机器学习之集成学习概念介绍

概念 机器学习中的集成学习(Ensemble Learning)是一种通过组合多个模型来提高整体性能的技术。它的基本思想是将多个学习器(弱学习器)组合成一个更强大的学习器,以提高整体性能和泛化能力。集成学习可以在各种机器学习任务中使用,包括分类、回归和聚类。 核心 弱学习器…

竞赛保研 基于深度学习的视频多目标跟踪实现

文章目录 1 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习的视频多目标跟踪实现 …

微服务基础设施怎么建设,如何选择微服务框架

微服务基础设施架构全貌 微服务 vs SOA 微服务基础设施优先级 微服务框架核心 模式1-嵌入式SDK式 【优点】 1. 架构简单&#xff0c;天然支持高性能、高可用&#xff1b; 2. 维护简单&#xff0c;无需维护独立的 Proxy 节点。 【缺点】 1. 应用侵入&#xff0c;需要集成 SD…

多级缓存架构(二)Caffeine进程缓存

文章目录 一、引入依赖二、实现进程缓存1. 配置Config类2. 修改controller 三、运行四、测试 通过本文章&#xff0c;可以完成多级缓存架构中的进程缓存。 一、引入依赖 在item-service中引入caffeine依赖 <dependency><groupId>com.github.ben-manes.caffeine…

亚马逊云科技 WAF 部署小指南(五):在客户端集成 Amazon WAF SDK 抵御 DDoS 攻击...

方案介绍 在 WAF 部署小指南&#xff08;一&#xff09;中&#xff0c;我们了解了 Amazon WAF 的原理&#xff0c;并通过创建 WEB ACL 和托管规则防护常见的攻击。也了解了通过创建自定义规则在 HTTP 请求到达应用之前判断是阻断还是允许该请求。在 Amazon WAF 自定义规则中&am…