【微信小程序】小程序基本组成结构(上)

简介: 【微信小程序】小程序基本组成结构


了解小程序的基本结构


我们新创建一个小程序项目



当创建一个小程序时,以下是各个文件的一般作用:


  1. images:这是一个目录,通常用于存放小程序中使用的图片文件。
  2. pages:这可能是一个目录,用于存放小程序中的页面或组件文件。
  3. utils:这通常是一个目录,包含在整个项目中使用的实用工具函数或模块。
  4. .eslintrc.js:这是 ESLint 的配置文件,ESLint 是一种流行的 JavaScript 代码检查工具,用于捕获错误并强制执行编码规范。
  5. app.js:这通常是小程序的入口文件,用于进行初始配置和初始化应用程序的代码。
  6. app.json:这是某些框架(如微信小程序)使用的配置文件,用于定义应用程序的结构和设置。
  7. app.wxss:这个文件包含了使用 WXSS(微信样式表)编写的样式表,WXSS 是微信小程序中的一种样式语言。
  8. project.config.json:这是特定开发环境或框架使用的配置文件。它可能包含与项目设置、构建过程、依赖关系等相关的设置。
  9. project.private.config.json:这可能是您的项目特定的私有配置文件。根据项目的要求,它的用途可能会有所不同。
  10. sitemap.json:此文件通常用于向搜索引擎提供有关您的网站或应用程序的结构和组织方式的信息。
  11. components :存放小程序的组件,可以在多个页面中复用的UI模块。


页面的基本结构



.js 文件:这些文件是页面的脚本文件,用于存放页面的数据、事件处理函数等逻辑代码。


.json 文件:这些文件是当前页面的配置文件,用于配置窗口的外观、表现等。例如,可以设置导航栏标题、背景色、是否启用下拉刷新等。


.wxml 文件:这些文件是页面的模块结构文件,类似于 HTML。它定义了页面的结构和组件的位置,并可以通过插值表达式(如 {{}})绑定数据。


.wxss 文件:这些文件是当前页面的样式表文件,类似于 CSS。您可以在其中编写样式规则,用于定义页面元素的外观和布局。


配置文件的详细分析


.eslintrc.js

基本配置内容


/*
 * Eslint config file
 * Documentation: https://eslint.org/docs/user-guide/configuring/
 * Install the Eslint extension before using this feature.
 */
module.exports = {
  env: {
    es6: true,
    browser: true,
    node: true,
  },
  ecmaFeatures: {
    modules: true,
  },
  parserOptions: {
    ecmaVersion: 2018,
    sourceType: 'module',
  },
  globals: {
    wx: true,
    App: true,
    Page: true,
    getCurrentPages: true,
    getApp: true,
    Component: true,
    requirePlugin: true,
    requireMiniProgram: true,
  },
  // extends: 'eslint:recommended',
  rules: {},
}


主要作用


.eslintrc.js是一个用于配置 ESLint 的配置文件。ESLint 是一个流行的 JavaScript 静态代码分析工具,它可以帮助开发者在编码过程中发现并修复潜在的问题,以确保代码的质量和一致性。


  1. 定义规则:通过 .eslintrc.js 文件,你可以定义一组规则来检查你的 JavaScript 代码,并指定应该如何处理违反这些规则的情况。这些规则可以涵盖代码风格、错误检查、最佳实践等方面。
  2. 配置环境:你可以在配置文件中指定运行代码的环境,例如浏览器、Node.js 或 ES6 等。
  3. 扩展插件:ESLint 支持插件系统,你可以在配置文件中添加插件,并使用这些插件提供的更多规则和功能。


代码示例:


下面是一个简单的 .eslintrc.js 文件示例:

module.exports = {
  root: true,
  env: {
    browser: true,
    node: true,
    es2021: true,
  },
  extends: [
    'eslint:recommended',
    'plugin:react/recommended',
  ],
  parserOptions: {
    ecmaVersion: 12,
    sourceType: 'module',
    ecmaFeatures: {
      jsx: true,
    },
  },
  rules: {
    // 在这里定义你的规则
    'no-console': 'off',
    'indent': ['error', 2],
    'quotes': ['error', 'single'],
  },
};


在这个示例配置中:


  • root: true 表示禁止在父级目录中寻找其他 ESLint 配置文件。
  • env 定义了代码运行的环境,此处指定了浏览器、Node.js 和 ES2021 环境。
  • extends 是一个数组,用于扩展现有的规则集。eslint:recommended 是 ESLint 内置的推荐规则集,plugin:react/recommended 是针对 React 项目的推荐规则集。
  • parserOptions 指定解析器选项,包括 ECMAScript 版本和源代码类型等。
  • rules 定义具体的 ESLint 规则。在这个示例中,no-console 规则被关闭(‘off’),indent 规则要求使用两个空格缩进,quotes 规则要求使用单引号。

通过 .eslintrc.js 文件的配置,你可以根据项目需求自定义规则,提高代码质量和一致性。


app.js


基本配置内容


// app.js
App({})

主要作用


app.js 是一个常见的命名约定,用于表示一个应用程序的主要入口文件或主要功能文件。它通常包含应用程序的核心逻辑,例如路由设置、中间件配置、服务器启动等。


作用:


  • 主要逻辑:app.js 文件通常包含应用程序的主要逻辑。这可能涉及路由定义、请求处理、数据操作等任务。
  • 依赖管理:app.js 可能会负责加载和初始化应用程序所需的各种依赖项,例如框架、库、插件等。
  • 配置文件:在 app.js 中,你可以读取和应用配置文件的值,例如数据库连接字符串、端口号、密钥等。这样可以方便地对应用程序进行配置。


代码示例:

以下是一个简单的 app.js 文件示例:

const express = require('express');
const app = express();
const port = 3000;
// 定义路由
app.get('/', (req, res) => {
  res.send('Hello, World!');
});
// 启动服务器
app.listen(port, () => {
  console.log(`Server is running on port ${port}`);
});


在这个示例中,app.js 使用了 Express 框架创建了一个简单的 Web 服务器。它通过调用 express() 创建了一个 Express 应用实例,并将其赋值给变量 app。


接下来,我们定义了一个简单的根路由,当用户访问根路径时,服务器会响应一个 “Hello, World!” 字符串。


最后,我们通过调用 app.listen(port) 启动了服务器,并在控制台打印出服务器运行的端口号。


这只是一个简单的示例,实际的 app.js 文件可能会包含更复杂的逻辑和更多的路由定义,以满足应用程序的需求。

相关文章
|
2月前
|
存储 JSON 小程序
微信小程序入门之新建并认识小程序结构
微信小程序入门之新建并认识小程序结构
57 1
ly~
|
3月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
84 6
|
3月前
|
JSON 小程序 前端开发
微信小程序的目录结构及页面结构的说明
本文详细介绍了微信小程序的目录结构、页面组成部分以及项目的全局配置文件,阐述了小程序的宿主环境和运行机制,包括小程序启动和页面渲染的过程。
微信小程序的目录结构及页面结构的说明
|
2月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
952 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
2月前
|
小程序 前端开发 数据可视化
微信商城小程序WeiMall
微信商城小程序WeiMall
38 0
|
3月前
|
小程序 前端开发 API
微信小程序 - 调用微信 API 回调函数内拿不到 this 问题(解决方案)
本文讨论了在微信小程序中调用API回调函数时无法获取到`this`上下文的问题,并提供了解决方案。在回调函数中,使用一个变量(如`that`)来保存当前的`this`引用,然后在回调内部使用这个变量来访问当前页面的数据和方法。
|
4月前
|
移动开发 小程序 前端开发
|
2月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
679 7
|
2月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
740 1
|
2月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
144 7
下一篇
DataWorks