最新补充两种

1、先在pages下新建文件夹,然后在文件夹上右键新建page,输入和文件夹同名内容,然后回车自动创建四个文件

在这里插入图片描述

2、在app.json中pages配置里,手动输入例如:“pages/cart/cart”,则保存后自动在pages下创建cart文件夹和四个文件

在这里插入图片描述

在微信小程序中,每个页面由一个独立的文件夹组成,该文件夹下必须包含四个基本文件:[.json](file://D:\workspace\me\rbac2024\read\后台系统\shop-api\itmk-base-web\target\classes\META-INF\spring-configuration-metadata.json)、.wxml.wxss.js。这四个文件分别用于定义页面配置、结构、样式和逻辑。
在这里插入图片描述


一、pages 页面下每个文件夹中的四个文件含义

文件名后缀类型作用说明
index.json[.json](file://D:\workspace\me\rbac2024\read\后台系统\shop-api\itmk-base-web\target\classes\META-INF\spring-configuration-metadata.json)配置文件页面级配置(如窗口样式),会覆盖 app.json 中的 window 设置
index.wxmlWXML模板文件页面结构(类似 HTML,但支持小程序标签)
index.wxssWXSS样式文件页面样式(类似 CSS,支持 rpx 单位)
index.jsJS脚本文件页面逻辑、数据绑定、生命周期函数等

二、创建页面的方式有哪些?

方式一:手动创建(推荐)

步骤:
  1. 在项目目录下的 pages 文件夹中新建一个文件夹,例如 pages/home/
  2. 在该文件夹中创建四个必要文件:
    • home.json
    • home.wxml
    • home.wxss
    • home.js
  3. 将新页面路径添加到 app.jsonpages 数组中
示例代码:
1. app.json 添加页面路径
{
  "pages": [
    "pages/home/home",      // 新增页面
    "pages/logs/logs"
  ],
  "window": {
    "navigationBarTitleText": "我的小程序",
    "navigationStyle": "custom"
  }
}

注:第一个页面是启动页

2. home.json(页面配置)
{
  "usingComponents": {},   // 引用自定义组件
  "disableScrollReport": false, // 是否禁用滚动监听
  "style": "v2"            // 启用新版样式系统
}
3. home.wxml(页面结构)
<view class="container">
  <text class="title">欢迎来到首页</text>
  <button bindtap="onClick">点击我</button>
</view>
4. home.wxss(页面样式)
.container {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 20rpx;
}

.title {
  font-size: 36rpx;
  color: #333;
  margin-bottom: 20rpx;
}
5. home.js(页面逻辑)
Page({
  data: {
    message: 'Hello MiniProgram'
  },

  // 页面加载时触发
  onLoad(options) {
    console.log('页面加载完成');
  },

  // 点击事件处理函数
  onClick() {
    this.setData({
      message: '你点击了按钮!'
    });
  }
});

方式二:通过开发者工具自动创建

步骤:
  1. 打开微信开发者工具
  2. 右键点击左侧“编辑器”面板中的 pages 文件夹
  3. 选择 【新建页面】
  4. 输入页面名称(如 about
  5. 工具会自动生成 about/about.jsonabout/about.wxml 等四个文件,并自动注册到 app.json

方式三:使用命令行或脚手架工具(进阶)

可以结合 npm scripts 或定制脚本自动生成页面模板,适用于团队开发或自动化流程。

示例脚本(Node.js)片段:

const fs = require('fs');
const path = require('path');

function createPage(pageName) {
  const dirPath = path.join(__dirname, 'pages', pageName);
  if (!fs.existsSync(dirPath)) fs.mkdirSync(dirPath);

  fs.writeFileSync(path.join(dirPath, `${pageName}.json`), JSON.stringify({}, null, 2));
  fs.writeFileSync(path.join(dirPath, `${pageName}.wxml`), `<view class="container">${pageName} 页面</view>`);
  fs.writeFileSync(path.join(dirPath, `${pageName}.wxss`), '.container { padding: 20rpx; }');
  fs.writeFileSync(path.join(dirPath, `${pageName}.js`), `Page({ data: {}, onLoad() {} });`);
}

createPage('contact');

运行后将生成 pages/contact/contact.* 四个文件。


三、四种创建方式对比总结表格

创建方式是否推荐适用场景优点缺点
手动创建✅ 推荐学习/调试/小型项目控制精细、理解结构需要重复创建多个文件
开发者工具自动创建✅ 推荐快速开发、团队协作快捷方便、自动注册依赖 IDE
命令行脚本创建⚠️ 进阶大型项目、自动化流程提升效率、统一结构需要编写维护脚本
第三方脚手架❌ 不常用特定框架项目支持模块化开发增加复杂度、学习成本高

四、补充说明

  • 页面路径不能带后缀pages/home/home 是正确的写法,不要写成 pages/home/home.json
  • 页面配置可覆盖全局配置:如 home.json 中设置的 window 属性会覆盖 app.json 中的同名配置
  • WXML 与 HTML 的区别:不支持所有 HTML 标签,需使用 <view><text> 等小程序内置组件
  • WXSS 支持 rpx 单位:适合响应式布局,1rpx = 0.5px(在 iPhone6 上)

五、总结

微信小程序的每个页面都由四个核心文件组成,分别负责配置、结构、样式和逻辑。创建页面的方式包括:

  1. 手动创建:理解结构的最佳方式
  2. 开发者工具自动创建:适合快速开发
  3. 命令行脚本创建:适合自动化流程
  4. 第三方脚手架:适用于特定框架项目(非必需)

合理选择创建方式,有助于提升开发效率和代码规范性。如果你需要我帮你批量生成页面模板,也可以告诉我~

更多推荐