• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程技巧 > 微信小程序学习之初探小程序

微信小程序学习之初探小程序

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-12

通过本文主要向大家介绍了微信小程序学习之初探小程序等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

前言

9月21日,传言已久的微信应用号正式以“微信公众平台小程序”的名义发布,依然采取了内测制度,目前只有少部分开发者可使用。“微信之父”张小龙在朋友圈介绍,这种小程序是一种不需要下载安装即可使用的应用,用户扫一扫或者搜一下即可打开应用,对用户来说应用触手可及,对微信来说体现了用完即走的理念。应用号出来之后,有人说微信这次要颠覆AppStore了,开发者直接基于微信开发小程序就可以了,不用开发什么App了。更有人说微信就是一个操作系统,真的如此吗?不管怎样,我们下面先来一探微信小程序。

一 项目文件结构

当打开微信小程序的Demo的时候,我个人习惯是先看整个项目的文件结构,先大致弄清这部分是干什么的,那部分又是干什么的,微信小程序基本的文件结构如下图:


首先我们一眼就可以看到,在项目根目录有三个文件,app.js,app.json,以及app.wxss,下面来谈谈我对这三个文件的理解。

1 . app.js

app.js中包含一个App()函数,我把它理解为微信小程序真正意义上的入口,也就是说当启动一个小程序的时候,首先会执行到这里。App()函数用来注册一个小程序,参数为Object类型,可以在其中指定小程序的生命周期函数(理解还不是很透彻), 当然,也可以定义一个全局的数据和函数,
我们可以在页面中调用全局的getApp()方法,获得小程序实例,从而来调用我们定义的全局数据和函数。

2 . app.json

app.json可以对小程序进行全局的配置,比如我们可以配置小程序有哪些页面、窗口表现形式、设置网络超时时间、设置多tab等。下面就是一个简单的配置:

{ 
"pages": [ 
"page/index/index", 
"page/logs/index" 
], 
"window": { 
"navigationBarTitleText": "Demo" 
}, 
"tabBar": { 
"list": [{ 
"pagePath": "page/index/index", 
"text": "首页" 
},{
"pagePath": "page/logs/logs",
 "text": "日志" 
}]
 }, 
"networkTimeout": { 
"request": 10000, 
"downloadFile": 10000 
}, 
"debug": true
}
</div>

3 .app.wxss

app.wxss文件比较好理解了,它相当于一个全局的样式表,等同于前端中的css文件,任何页面都可以使用这个样式表,当然,如果某个页面重复定义了某个属性的表现形式的话,则会覆盖app.wxss文件中定义的。

以上三个文件中,app.js和app.json是每个微信小程序必须要有的,app.wxss则根据需要来添加。

在图一的文件结构中,还有三个文件夹目录:images,pages,utils,这种形式就类似我们开发中分包的做法(其实就是)-将具有类型性质的文件或者类分目录存放,这样便于维护项目。

我们来关注下pages目录,这个目录存放了小程序的所有页面。

这里我们定义了两个页面,index(首页)和logs(显示某种日志)。
可以看到,在每个页面中,也有类似前边儿我们所说的app.js,app.json等文件,下面我们就来看看它们具体是什么。
以logs页面为例:

1 .logs.js

我们看一下这个文件中简单的代码:

//logs.js
var util = require('../../utils/util.js')
Page({
 data: {
 logs: []
 },
 onLoad: function () {
 this.setData({
 logs: (wx.getStorageSync('logs') || []).map(function (log) {
 return util.formatTime(new Date(log))
 })
 })
 }
})
</div>

如果你有过开发经验或者是js开发经验,那么一样就可以看出,这个类的结构很简单:1.引入了一个外部文件,2.有一个函数,进行了某种处理。

我们看一下官方文档是怎么介绍这个以js结尾的文件的:包含一个Page()函数,Page()函数用来注册一个页面。接受一个object参数,其指定页面的初始数据、生命周期函数、事件处理函数等。它是页面的逻辑文件,页面逻辑在这里处理。

在这个文件中,我们可以定义变量,函数等。

2 .logs.json

app.json是小程序的全部配置文件,那么不难理解,logs.json则是logs页面的配置文件,在这里我们可以配置页面标题等属性。

3 .logs.wxml

wxml文件是页面独有的,它相当于界面,它是与用户交互的入口,微信提供了很多基础组件,例如按钮,文本以及进度条等,都可以在这个文件中配置并显示出具体的效果。

4 .logs.wxss

wxss跟app.wxss文件一样,都是样式表文件,不过每个页面下的这个文件时对于某个页面的,而app.wxss则是全局的样式配置,相同属性的话,logs.wxss会覆盖掉app.wxss中的。

对于页面下的文件配置,我们来看一下官方的说明:


总结

以上就是微信小程序的整体项目文件结构,由宏观到具体,弄清整体框架后,再一步一步学习其中的细节,可能会更加轻松。想学习更多关于微信小程序的文章请继续关注。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 2017-05-12从Chrome App看微信小程序的发展前景
  • 2017-05-12趣谈Unicode、Ascii、utf-8、GB2312、GBK等编码知识
  • 2017-05-12算法系列15天速成 第一天 七大经典排序【上】
  • 2017-05-12分享下网站开发人员应该知道的61件事
  • 2017-05-12手把手教你将Vim改装成一个IDE编程环境(图文) 吴垠
  • 2017-05-12UTF-8 编码中BOM的检测与删除
  • 2017-05-12OAuth 2.0授权协议详解
  • 2017-05-12php asp.net 比较 [推荐]
  • 2017-05-12GitHub入门教程 手把手教你最简单的开源项目托管
  • 2018-08-06python数据分析

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • UUencode 编码,UU编码介绍、UUencode编码转换原理与算法
    • 分享下程序员/设计师能用上的 75 份速查表
    • 图片的色彩空间问题
    • 算法系列15天速成 第一天 七大经典排序【上】
    • 微信小程序下载工具及调试详解
    • 微信小程序版的知乎日报开发实例
    • 二维码的生成细节和原理
    • 改良程序的11技巧分享
    • 国外开发者谈为何放弃PHP而改用Python
    • Http 状态代码 指示(ajax,bs结构用的到)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有