微信小程序学习笔记(阶段一)
一阶段学习过程:
(一)看官方文档的简易教程:https://mp.weixin.qq.com/debug/wxadoc/dev/
(二)看小码哥视频:https://chuanke.baidu.com/v2040981-197486-1133724.html
(三)模仿并写出一个计算器小程序demo
项目结构:
pages:存储这各个页面的文件夹
pages内的文件夹(初始有index、logs):分别存储这每个页面,其中一般包含三种文件,*.js、*wxml、*wxss
utils:里面装有一个util.js文件,该文件封装着各种工具方法
app.js:整个小程序周期的相关逻辑
app.json:用于注册页面,定义一些全局信息或整个程序相关信息等公共信息
app.wxss:全局公共样式表
文件类型介绍:
*.js:定义各种逻辑处理的文件
*.wxml:定义页面组件的文件,相似于html(这里是基于html5,名字wx是微信的意思,ml则是html的后两个字母)
*.wxss:定义组件样式的样式表,相似于css
*.json:用于配置相关信息的文件
添加页面:
①在pages添加一个页面文件夹
②在新增的文件夹内添加.wxml文件及.js文件(.wxss和.json可选)
③在.js中添加page项(输入pa后自动联想,然后选择Page会自动创建好)
④在app.json中的“pages”项中注册页面
定义/修改/使用页面变量:
定义:
在本页面的*.js文件中的data项中定义,格式如:
data: {
text: "this is Macrazd",
res: "0",
lastIsOperator:false,
arr:[],
logs:[]
},
使用:
在本页面的*.wxml中使用,格式如:
<block wx:for="{{logs}}" wx:for-item="log">
<view class="item">
<view class="text">{{log}}</view>
</view>
</block>
注:这里的<block wx:for="{{logs}}" wx:for-item="log">标签的意思是以logs这一数组作循环生成<view class="item"><view class="text">{{log}}</view></view>
读取/修改:
在本页面的*.js中任一方法中修改data中的变量值,格式如:
//读取:
console.log(this.data.text);
//修改
this.setData({data:"123"});
注:这里的console.log(var);的作用是在控制台输出内容
定义和调用方法:
在*.js中定义一个方法的格式如下:
test: function(){
console.log(this.data.text);
}
/*
函数名:function(){
方法体
}
*/
在*.wxml中调用*.js中的逻辑方法的格式如下:
<view bindtap="btnClick">back</view>
个人感想:
在学习前在知乎上看到有人说,只要粗略会一些html、css、js就可以很快上手微信小程序。在我下载了官方开发工具之后,看到文件结构还是挺简洁的,但是看到这两种文件的格式*.wxml、*.wxss,一下就懵了,*.json也不知道是用来干什么的(本人刚入门,没学过json)。之后我就开始看官方文档,粗略看完了简易教程之后,有了简单的了解,但还是没什么概念,于是就去看了小码哥的视频,才发现wxml是html5的改版,wx是指微信,ml就是html的后面两个字母,wxss和css同理,这瞬间就开窍了。之后在学习过程中,虽然有些和之前所学的网页设计的内容有一些区别,但还是比较快就能上手的。
所以总的来说,只要了解过网页设计,再稍微理解一下文件的框架结构,基本上入手来说是问题不大的(至少对我来说是这样的)。
微信小程序学习笔记(阶段一)的更多相关文章
- 【微信小程序学习笔记】入门与了解
[微信小程序学习笔记(一)] IDE 下载安装 下载地址 官方工具:https://mp.weixin.qq.com/debug/w … tml?t=1476434678461 下载可执行文件后,可按 ...
- 微信小程序学习笔记二 数据绑定 + 事件绑定
微信小程序学习笔记二 1. 小程序特点概述 没有DOM 组件化开发: 具备特定功能效果的代码集合 体积小, 单个压缩包体积不能大于2M, 否则无法上线 小程序的四个重要的文件 *js *.wxml - ...
- 微信小程序学习笔记一 小程序介绍 & 前置知识
微信小程序学习笔记一 1. 什么是小程序? 2017年度百度百科十大热词之一 微信小程序, 简称小程序, 英文名 Mini Program, 是一种不需要下载安装即可使用的应用 ( 张小龙对其的定义是 ...
- 微信小程序学习笔记以及VUE比较
之前只是注册了一下微信小程序AppID,随便玩了玩HelloWorld!(项目起手式),但是最近看微信小程序/小游戏,崛起之势不可阻挡.小程序我来了!(果然,一入前端深似海啊啊啊啊啊~) 编辑器: S ...
- 微信小程序学习笔记1--小程序的代码构成
最近打算学习一下微信小程序,看了微信公众平台的文档感觉还比较简单,就从这个方向重新找回学习的状态吧: 1.先了解一下小程序的代码构成: 创建项目后会看到四种后缀的文件: .json 后缀的 JSON ...
- 微信小程序学习笔记(三)
一般setData方法多用于点击后改变页面信息或者刷新后与后台交互获取最新的信息 注意: 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致 ...
- ubuntu18.04微信小程序学习笔记
安装微信小程序开发工具 安装 https://github.com/cytle/wechat_web_devtools 创建快捷方式 sudo nautilus //在/usr/share/appli ...
- 微信小程序学习笔记(1)-微信小程序样式设置逻辑
1.微信小程序的样式设置统一在每一页的.wxss的样式文件中,所有的样式设置代码统一写入这个文件中: 2.样式主要是通过.wxml里面控件的“class”属性来调用,此处调用会有几个细节要注意: 1) ...
- 微信小程序学习笔记(3)--------框架之配置
我们使用app.json文件来对微信小程序进行全局配置,决定页面文件的路径.窗口表现.设置网络超时时间.设置多 tab 等. app.json 配置项列表 属性 类型 必填 描述 pages Stri ...
随机推荐
- java调用shell脚本,并获得结果集的例子
/** * 运行shell脚本 * @param shell 需要运行的shell脚本 */ public static void execShell(String shell){ try { Run ...
- 我的Java设计模式-策略模式
今天给大家说说田忌赛马的故事.如有雷同,纯属巧合!话说在战国时期,群雄割据,硝烟四起,茶余饭后还是少不了娱乐活动的,其中赛马是最火爆的.一天,孙膑看到田忌像个死鸡似的就知道肯定赛马又输给了齐威王,立马 ...
- 阻止微信浏览器/QQ浏览器长按弹框“在浏览器打开”
这个弹框实际上等同于PC环境下的鼠标右键的弹框,因此只要禁止页面的弹框事件就能完美屏蔽该弹框对我们功能带来的影响.程序代码如下: document.oncontextmenu=function(e){ ...
- 【mongodb系统学习之七】mongodb的关闭
七.mongodb的关闭: 1).直接根据进程id杀死mongodb进程,如图(注意,kill -9要慎用,这个是强制关闭进程,可能导致文件损坏,尽量不要用,可以直接kill不加参数): 2).如果不 ...
- 为什么选择Netty作为基础通信框架?
在开始之前,我先讲一个亲身经历的故事:曾经有两个项目组同时用到了NIO编程技术,一个项目组选择自己开发NIO服务端,直接使用JDK原生的API,结果两个多月过去了,他们的NIO服务端始终无法稳定,问题 ...
- C#抽象类应用实例
abstract修饰符可以和类.方法.属性.索引器及事件一起使用,在类声明中使用abstract修饰符以表明这个类只能是其他类的基类. 抽象类的特性 (1)抽象类不能被实例化 (2)抽象类可以包含抽象 ...
- java.sql.SQLException: ORA-01841
1.错误描述 body = (null) clientId = "DB719904-1E0C-35DC-725D-86ABCF2B6EEC" correlationId = &qu ...
- 美团CodeM复赛 02,03
02 城市网络 比赛时候写的是单调栈,真的是让人见笑了,基本思路就是dfs时候动态处理单调栈(带回溯),然后离线处理答案.题解是用了倍增的,效率高很多 #include <cstdio> ...
- python爬虫--爬取某网站电影下载地址
前言:因为自己还是python世界的一名小学生,还有很多路要走,所以本文以目的为向导,达到目的即可,对于那些我自己都没弄懂的原理,不做去做过多解释,以免误人子弟,大家可以网上搜索. 友情提示:本代码用 ...
- Dubbo 新编程模型之外部化配置
外部化配置(External Configuration) 在Dubbo 注解驱动例子中,无论是服务提供方,还是服务消费方,均需要转配相关配置Bean: @Bean public Applicatio ...