【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析

这篇具有很好参考价值的文章主要介绍了【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

小程序框架的⽬标是通过尽可能简单、⾼效的⽅式让开发者可以在微信中开发具有原⽣APP体验的服务。

⼩程序框架提供了⾃⼰的视图层描述语⾔ WXML 和 WXSS ,以及 JavaScript ,并在视图层与逻辑层间提供了数据传输和事件系统,让开发者能够专注于数据与逻辑。

【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析


1、小程序文件结构和传统web对比

传统web 微信小程序
项目骨架、结构 HTML WXML
页面样式 CSS WXSS
项目逻辑 Javascript Javascript
配置 JSON
  1. 通过以上对⽐得出传统web是三层结构。⽽微信⼩程序是四层结构,多了⼀层配置.json

  2. 当这几个文件在同一级目录下且命名相同(后缀不同),可以互相引用却不用导入


2、基本的项目目录

Ⅰ-项目目录解释

  1. 项目目录图解:

【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析

  1. app开头的文件是应用程序级别的文件,更改一处全局生效。而页面pages的配置优先级高于全局配置(就近原则)
  2. 小程序是允许你修改文件目录名的

3、小程序配置文件

⼀个⼩程序应⽤程序会包括最基本的两种配置⽂件。⼀种是全局的app.json 和 ⻚⾯⾃⼰的page.json

Ⅰ-全局配置app.json

  1. app.json 是当前⼩程序的全局配置,包括了⼩程序的所有⻚⾯路径、界⾯表现、⽹络超时时间、底部tab等。普通快速启动项⽬⾥边的 app.json 配置

  2. 代码

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
 ],
 "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
 }
}
  1. 字段的含义

1)pages 字段⸺⽤于描述当前⼩程序所有⻚⾯路径,这是为了让微信客⼾端知道当前你的⼩程序⻚⾯定义在哪个⽬录。

默认显示此字段中的第一项

​ 2)window 字段⸺定义⼩程序所有⻚⾯的顶部背景颜⾊,⽂字颜⾊定义等。

​ 3)完整的配置信息请参考 app.json配置

  1. tabBar-底部 tab 栏的表现:
    【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析

更多配置详细请看app配置文档

Ⅱ-页面配置page.json

  1. 这⾥的 page.json 其实⽤来表⽰⻚⾯⽬录下的 page.json 这类和⼩程序⻚⾯相关的配置。 开发者可以独⽴定义每个⻚⾯的⼀些属性,如顶部颜⾊、是否允许下拉刷新等等。 ⻚⾯的配置只能设置 app.json 中部分 window 配置项的内容,⻚⾯中配置项会覆盖 app.json 的 window 中相同的配置项。
  1. 常用配置属性列举:
属性 类型 默认值 描述
navigationBarBackgroundColor HexColor #000000 导航栏背景颜⾊,如 #000000
navigationBarTextStyle String white 导航栏标题颜⾊,仅⽀持 black / white
navigationBarTitleText String 导航栏标题⽂字内容
backgroundColor HexColor #ffffff 窗⼝的背景⾊
backgroundTextStyle String dark 下拉loading的样式,仅⽀持 dark / light
enablePullDownRefresh Boolean false 是否全局开启下拉刷新。 详⻅ Page.onPullDownRefresh
onReachBottomDistance Number 50 ⻚⾯上拉触底事件触发时距⻚⾯底部距离,单位为px。 详⻅ Page.onReachBottom
disableScroll Boolean false 设置为 true 则⻚⾯整体不能上下滚动;只在⻚⾯配置中有效,⽆法在 app.json 中设置该项

Ⅲ-sitemap 配置(了解即可)

⼩程序根⽬录下的 sitemap.json ⽂件⽤于配置⼩程序及其⻚⾯是否允许被微信索引。主要服务于搜索


4、小程序框架接口

Ⅰ-App(Object object)

  1. 注册小程序。接受一个 Object 参数,其指定小程序的生命周期回调等。

  2. App() 必须在 app.js 中调用,必须调用且只能调用一次。不然会出现无法预期的后果

  3. 相应的app()参数在下方的小程序生命周期中有指出

AppObject getApp(Object object)

  1. 获取到小程序全局唯一的 App 实例。

  2. 代码示例

// other.js
var appInstance = getApp()
console.log(appInstance.globalData) // I am global dat
//或者
const {GbaseUrl} =getApp()  //GbaseUrl是自己在app.js定义的全局变量
  1. Object object
属性 类型 默认值 必填 说明 最低版本
allowDefault boolean false App 未定义时返回默认实现。当App被调用时,默认实现中定义的属性会被覆盖合并到App中。一般用于独立分包 2.2.4
  1. 注意
  • 不要在定义于 App() 内的函数中,或调用 App 前调用 getApp() 。使用 this 就可以拿到 app 实例。
  • 通过 getApp() 获取实例之后,不要私自调用生命周期函数

【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析文章来源地址https://www.toymoban.com/news/detail-487788.html

到了这里,关于【微信小程序丨第二篇】小程序的基本目录结构与文件作用剖析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序开发工具的目录结构

    1  .js文件:页面脚本文件,存放页面数据、事件处理函数等。——处理用户操作  app.js文件:整个项目的入口文件,通过调用App()函数启动项目。  页面.js文件:页面入口文件,调用Page()函数,创建并运行页面。 普通.js文件:普通功能模块文件,用来封装公共的函数或

    2024年02月05日
    浏览(53)
  • 简单描述下微信小程序的目录结构

    微信小程序的目录结构通常包括以下主要部分: 这是一个典型的微信小程序的目录结构,具体项目可能会有一些变化,但通常都包含类似的核心文件和文件夹。小程序开发者需要按照这个结构组织项目代码和资源 app.js :小程序的主入口文件,用于定义小程序的全局配置,包

    2024年02月07日
    浏览(38)
  • 微信小程序基本结构

    app.js 是入口文件。 项目配置文件 一个页面四个文件 在全局配置文件中加一行,即创建一个一个页面,和它的所有文件 可以 alt+up 或down来移动位置 填入自己appid 选取需要的图标字体,加入购物车中。 选择以类方法引入。 下载此链接 粘贴到这里。 做全局引入 总结 打开阿⾥

    2024年01月18日
    浏览(30)
  • 【微信小程序】小程序基本组成结构

    「作者主页」 :雪碧有白泡泡 「个人网站」 :雪碧的个人网站 「推荐专栏」 : ★ java一站式服务 ★ ★ 前端炫酷代码分享 ★ ★ uniapp-从构建到提升 ★ ★ 从0到英雄,vue成神之路 ★ ★ 解决算法,一个专栏就够了 ★ ★ 架构咱们从0说 ★ ★ 数据流通的精妙之道★ 我们新创

    2024年02月16日
    浏览(29)
  • 【微信小程序】小程序代码基本组成结构

    ✅作者简介:大家好我是hacker707,大家可以叫我hacker,新星计划第三季python赛道Top1🏆 📃个人主页:hacker707的csdn博客 🔥系列专栏:微信小程序 💬个人格言:但行好事,莫问前程 pages 用于存放所有小程序的页面 utils 用于存放工具性质的模块(例如:格式化时间的自定义模块)

    2024年02月02日
    浏览(35)
  • 微信小程序入门及开发准备,申请测试号以及小程序开发的两种方式,目录结构说明

    目录 1. 介绍 1.1 优点 1.2 开发方式 2. 开发准备 2.1 申请 2.2 申请测试号 2.2 小程序开发的两种方式 2.3 开发工具 3. 开发一个demo 3.1 创建项目 3.2 配置 3.3 常用框架 3.3 目录结构说明 3.4 新建组件 是一种不需要下载安装即可使用的应用,是一种 触手可及 的应用 可以借助微信的流量

    2024年02月05日
    浏览(44)
  • 微信小程序之项目基本结构、页面的基础及宿主环境

    微信小程序的项目基本结构、页面的基础及宿主环境 新建一个微信小程序项目,其项目基本结构如下: pages用来存放所有小程序的页面 utils用来存放工具性质的模块(例如:格式化时间的自定义模板) app.js小程序项目的全局配置文件 app.json小程序项目的全局配置文件 app.wx

    2024年02月03日
    浏览(46)
  • 第二篇:简介、目录及视频配套广告 - IAB视频广告标准《数字视频和有线电视广告格式指南》

    - 我为什么要翻译介绍美国人工智能科技公司IAB系列(2) 写在前面         谈及到中国企业走入国际市场,拓展海外营销渠道的时候,如果单纯依靠一个小公司去国外做广告,拉渠道,找代理公司,从售前到售后,都是非常不现实的。我们可以回想一下40年前,30年前,20年

    2024年03月27日
    浏览(42)
  • Mysql第二篇---InnoDB数据存储结构

    索引结构给我们提供了高效的索引方式, 不过索引信息以及数据记录都是保存在文件上的(innodb的ibd文件, MyISAM的MyI和MyD文件), 确切的说是存储在页结构中. 另一方面, 索引是在 存储引擎 中实现的, MySQL服务器上的存储引擎负责对表中数据的读取和写入工作. 不同存储引擎中存放

    2024年02月07日
    浏览(63)
  • [ 数据结构 -- 手撕排序算法第二篇 ] 冒泡排序

    手撕排序算法系列之:冒泡排序。 从本篇文章开始,我会介绍并分析常见的几种排序,大致包括 插入排序 , 冒泡排序 ,希尔排序,选择排序,堆排序,快速排序,归并排序等。 大家可以点击此链接阅读其他排序算法:排序算法_大合集(data-structure_Sort) 本篇主要来手撕冒

    2024年02月11日
    浏览(56)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包