微信小程序学习笔记之目录结构、基本配置图文详解


Posted in Javascript onMarch 28, 2019

本文实例讲述了微信小程序学习笔记之目录结构、基本配置。分享给大家供大家参考,具体如下:

结束了一段时间的学习,开始一段新的学习旅程 —— 微信小程序。现在出去找工作只会PHP、HTML+CSS、JS什么的不够了,总得会点时下热门的东西,例如微信小程序,有很多企业的招聘要求上写着:“做过微信小程序的优先”、“只要做过微信小程序的”...... 可见微信小程序的热门程度。话(fei)不(hua)多(ting)说(duo),开始学习。

首先在微信公众平台注册小程序账号:

微信小程序学习笔记之目录结构、基本配置图文详解

微信小程序学习笔记之目录结构、基本配置图文详解

 

微信小程序学习笔记之目录结构、基本配置图文详解

使用小程序账号登录微信公众平台,完成基本设置:

微信小程序学习笔记之目录结构、基本配置图文详解

下载微信web开发者工具,安装,打开(如果打不开,参考附录:微信web开发者工具不能打开的问题) 

微信扫码登录开发者工具,然后在本地文件夹创建一个小程序项目

微信小程序学习笔记之目录结构、基本配置图文详解

微信小程序学习笔记之目录结构、基本配置图文详解

(其中AppID在开发设置里面)

微信小程序学习笔记之目录结构、基本配置图文详解

生成小程序示例目录如下:

微信小程序学习笔记之目录结构、基本配置图文详解

全局配置app.json参数:

{
 /**所有页面的路径(省略.wxml后缀),唯一必填项**/
 "pages":[
 "pages/index/index", /**第一项为首页路径**/
 "pages/logs/logs"
 ],
 /**设置窗口**/
 "window":{
 "backgroundTextStyle":"light", /**下拉loading样式,dark或light**/
 "navigationBarBackgroundColor": "#fff", /**导航栏背景颜色 十六进制**/
 "navigationBarTitleText": "WeChat", /**导航栏标题内容**/
 "navigationBarTextStyle":"black", /**导航栏标题颜色 black或white**/
 "navigationStyle":"default", /**导航栏样式 default和custom(只保留右上角胶囊按钮,最低版本6.6.0)**/
 "backgroundColor":"#ffffff", /**窗口背景色**/
 "enablePullDownRefresh":false, /**是否全局开启下拉刷新**/
 "onReachBottomDistance":"50", /**页面上拉触底事件触发时距页面底部距离,单位px**/
 "backgroundColorTop":"#ffffff", /**顶部窗口的背景色(仅iOS支持,最低版本6.5.16)**/
 "backgroundColorBottom":"#ffffff", /**底部窗口的背景色(仅iOS支持,最低版本6.5.16)**/
 },
 /**顶部或底部分栏设置**/
 "tabBar": {
 "list": [{ /**栏目列表(最少2个 最多5个)**/
  "pagePath": "pages/index/index", /**页面路径(必须在pages中先定义)**/
  "text": "首页", /**分栏按钮文字**/
  /**非必填项**/
  "iconPath": "首页", /**icon图标路径**/
  "selectedIconPath": "首页" /**选中时icon图标路径**/
  /*icon说明:大小限制40kb,建议尺寸81px*81px,不支持网络图片。postion为top时不显示*/
 }, {
  "pagePath": "pages/logs/logs",
  "text": "日志"
 }],
 "color":"#ffffff", /**分栏文字颜色**/
 "selectedColor":"#ffffff", /**分栏文字选中颜色**/
 "backgroundColor":"#ffffff", /**分栏背景色**/
 /**非必填项**/
 "borderStyle":"black", /**分栏上边框颜色 black或white**/
 "position":"bottom", /**分栏位置 bottom或top**/
 },
}

页面配置xxx.json参数:

{
 "navigationBarBackgroundColor": "#000000", /**导航栏背景颜色 十六进制**/
 "navigationBarTextStyle": "white", /**导航栏标题颜色 black或white**/
 "navigationBarTitleText": "页面标题", /**导航栏标题内容**/
 "backgroundColor": "#ffffff", /**窗口背景色**/
 "backgroundTextStyle": "dark", /**下拉loading样式,dark或light**/
 "enablePullDownRefresh":false, /**是否全局开启下拉刷新**/
 "onReachBottomDistance":"50", /**页面上拉触底事件触发时距页面底部距离,单位px**/
 "onReachBottomDistance":false, /**设置为 true 则页面整体不能上下滚动;只在页面配置中有效**/
 /**说明:页面的.json只能设置window相关配置项,无需写window这个键。**/
}

工具配置project.config.json参数:

{
	"description": "项目配置文件", /**描述**/
	/**打包配置选项**/
	"packOptions": {
		"ignore": [{
	  "type": "file", /**文件**/
	  "value": "test/test.js"
	 }, {
	  "type": "folder", /**文件夹**/
	  "value": "test"
	 }, {
	  "type": "suffix", /**后缀**/
	  "value": ".webp"
	 }, {
	  "type": "prefix", /**前缀**/
	  "value": "test-"
	 }]
	},
	/**项目设置**/
	"setting": {
		"urlCheck": true, /**是否检查安全域名和TLS版本**/
		"es6": true, /**是否启用 es6 转 es5**/
		"postcss": true, /**上传代码时样式是否自动补全**/
		"minified": true, /**上传代码时是否自动压缩**/
		"newFeature": true
	},
	"compileType": "miniprogram", /**编译类型 miniprogram为普通小程序项目,plugin为小程序插件项目**/
	"libVersion": "2.3.0", /*基础库版本*/
	"appid": "wx1aebd07bdcf596b8", /*项目appid,只在新建项目时读取*/
	"projectname": "ceshi", /**项目名字,只在新建项目时读取**/
	/**调试配置选项**/
	"debugOptions": {
		"hidedInDevtools": []
	},
	"isGameTourist": false, /**小游戏**/
	"condition": {
		"search": {
			"current": -1,
			"list": []
		},
		"conversation": {
			"current": -1,
			"list": []
		},
		"game": {
			"currentL": -1,
			"list": []
		},
		"miniprogram": {
			"current": -1,
			"list": []
		}
	}
}

WXML模板:充当类似HTML 角色,区别是标签不一致(view、button、text等)、渲染和逻辑分离,多了一些 wx:if 这样的属性以及 {{ }} 这样的表达式。

WXSS 样式:充当类似CSS 角色,仅支持部分CSS选择器,新增尺寸单位rpx,全局样式app.wxss作用于小程序所有页面,局部页面样式page.wxss仅对当前页面生效。

JS 交互逻辑:处理用户操作,例如响应用户的点击、获取用户的位置等。

【例】在页面中点击声明bindtap属性的button,调用JS中声明的clickMe方法来响应这次点击操作,实现把页面中的msg显示为"Hello World"。

测试页面test.js:

//test.js
const util = require('../../utils/util.js')
Page({
 clickMe: function() {
 this.setData({ msg: "Hello World" })
 }
})

测试页面test.wxml:

<!--test.wxml-->
<view>{{ msg }}</view>
<button bindtap="clickMe">点击我</button>

微信小程序学习笔记之目录结构、基本配置图文详解

附:微信web开发者工具不能打开的问题解决方法

今天新装的微信开发者工具,安装完成以后就是打不开,点解没有反应,win10   64的系统,各种百度,最后找到解决的方案

微信小程序学习笔记之目录结构、基本配置图文详解

把这些都关闭了就OK了!!!

希望本文所述对大家微信小程序设计有所帮助。

Javascript 相关文章推荐
JS 文字符串转换unicode编码函数
May 30 Javascript
javascript正则匹配汉字、数字、字母、下划线
Apr 10 Javascript
通过JS来动态的修改url,实现对url的增删查改
Sep 01 Javascript
Javascript核心读书有感之语句
Feb 11 Javascript
javascript 数据存储的常用函数总结
Jun 01 Javascript
基于JavaScript实现报警器提示音效果
Oct 27 Javascript
浅谈Vue数据绑定的原理
Jan 08 Javascript
解决axios发送post请求返回400状态码的问题
Aug 11 Javascript
JS自定义对象创建与简单使用方法示例
Jan 15 Javascript
JS eval代码快速解密实例解析
Apr 23 Javascript
JS如何实现手机端输入验证码效果
May 13 Javascript
多个Vue项目部署到服务器的步骤记录
Oct 22 Javascript
vue-cli中使用高德地图的方法示例
Mar 28 #Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
Mar 28 #jQuery
JavaScript实现汉字转换为拼音及缩写的方法示例
Mar 28 #Javascript
vue+iview/elementUi实现城市多选
Mar 28 #Javascript
node中使用es6/7/8(支持性与性能)
Mar 28 #Javascript
微信小程序开发实现的IP地址查询功能示例
Mar 28 #Javascript
微信小程序结合mock.js实现后台模拟及调试
Mar 28 #Javascript
You might like
PHP框架Laravel中实现supervisor执行异步进程的方法
2017/06/07 PHP
PHP基于DOMDocument解析和生成xml的方法分析
2017/07/17 PHP
PHP常见的序列化与反序列化操作实例分析
2019/10/28 PHP
Avengerls vs Newbee BO3 第三场2.18
2021/03/10 DOTA
一段非常简单的让图片自动切换js代码
2006/11/10 Javascript
javascript 循环读取JSON数据的代码
2010/07/17 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
不提示直接关闭网页窗口的JS示例代码
2013/12/17 Javascript
JS去除字符串两端空格的简单实例
2013/12/27 Javascript
元素绑定click点击事件方法
2015/06/08 Javascript
jquery-tips悬浮提示插件分享
2015/07/31 Javascript
基于JavaScript实现仿京东图片轮播效果
2015/11/06 Javascript
浅析javascript的return语句
2015/12/15 Javascript
node.js插件nodeclipse安装图文教程
2020/10/19 Javascript
JavaScript中的原型prototype完全解析
2016/05/10 Javascript
在JS中a标签加入单击事件屏蔽href跳转页面
2016/12/16 Javascript
js仿拉勾网首页穿墙广告效果
2017/03/08 Javascript
AngularJS读取JSON及XML文件的方法示例
2017/05/25 Javascript
node中使用es5/6以及支持性与性能对比
2017/08/11 Javascript
微信小程序使用map组件实现路线规划功能示例
2019/01/22 Javascript
layer.confirm()右边按钮实现href的例子
2019/09/27 Javascript
c++生成dll使用python调用dll的方法
2014/01/20 Python
pyqt4教程之messagebox使用示例分享
2014/03/07 Python
详解Python中的__init__和__new__
2014/03/12 Python
Python中使用语句导入模块或包的机制研究
2015/03/30 Python
python执行等待程序直到第二天零点的方法
2015/04/23 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
Python pandas自定义函数的使用方法示例
2019/11/20 Python
Marks & Spencer爱尔兰:英国马莎百货
2016/04/20 全球购物
利物浦足球俱乐部官方网上商店:Liverpool FC Official Store
2018/01/13 全球购物
社团招新策划书
2014/02/04 职场文书
计算机售后服务承诺书
2014/05/30 职场文书
学生不讲诚信检讨书
2014/09/29 职场文书
Python 绘制多因子柱状图
2022/05/11 Python
JS实现九宫格拼图游戏
2022/06/28 Javascript
redis protocol通信协议及使用详解
2022/07/15 Redis