小程序之入门篇(一)

      大家好,我是小编,这几天自己学习了小程序,发现真的太爽了,以下是我写下的笔记,希望给入门的盆友提供一些帮助吧。


app.js   用于监听并处理小程序的生命周期函数,声明全局变量,调用框架,提供丰富的API

同步存储:wx.setStorageSync()
同步读取本地数据的API:wx.getStorageSync()


app.json : 对整个小程序的全局配置

app.wxss:  整个小程序的公共样式表


注:.wxml与.js文件是页面所必需的 .wxss 与.json 文件则是可选的

每一个页面的“路径+页面名” 都需要写在app.json的pages中 ,且pages中的第一个页面
是小程序的首页


<block/>并不是一个组件,仅仅是一个包装元素,不会在页面做任何渲染,只
        接受控制属性(wx:for或wx:if)


小程序执行的生命周期:
app.onLaunch(启动,初始化)->app.onShow(进入前台,触发执行的操作)->page1.onLoad

(page1页面加载执行初始化)->page1.onShow->page1.onReady(页面就绪)->

page1.onHide(页面隐藏)->page2.onLoad->page2,onShow->page2.onReady->page2.onUnload

(page2页面关闭)->page1.onShow(page1页面显示)->...-> app.onUnload(退出小程序)


-------------------------------------------

每个小程序分为2个线程:    ①view : 负责解析渲染页面(wxml 和 wxss )
            ②appServer:负责运行js

小程序的开发步骤:    ①创建小程序实例:编写3个app前缀的文件
            小程序实例将由appServer线程执行

            ②创建页面(页面结构与事务处理逻辑)
            小程序页面由view线程来执行


---------------------------------------------------
MINA框架 : 有着接近原生App的运行速度,做了大量的框架层面的优化设计,对Android端和
ios端做出了高度一致的呈现


逻辑层: 事务逻辑处理的地方(所有.js脚本文件的集合)
    小程序逻辑层由js编写,但并非运行在浏览器中

视图层:由wxml和wxss编写,由组件来进行展示(所有.wxml文件与.wxss文件的集合)    


数据层:临时数据或缓存,文件存储,网络存储与调用

    ①页面临时数据或缓存 setData

    ②文件存储:    wx.getStorage 本地数据缓存
            wx.setStorage 设置本地数据缓存
            wx.clearStorage 清理本地数据缓存

    3、网络存储或调用    wx.request  发起网络请求
                wx.uploadFile  上传文件
                wx.downloadFile 下载文件
                调用url的api接口
                wx.navigateTo 新窗口打开页面
                wx.redirectTo 原窗口打开页面
        

------------------------------------
小程序入口:     (用户端)
        1.给定二维码,扫描进入
        2.关注小程序后进入,或可自定义保存在桌面上
        3.其他公众号图文、朋友圈广告、朋友分享等链接进入
        (开发者)
        1.电脑上运行“微信Web开发者工具”,直接模拟使用
        2.使用手机微信扫码进行预览

小程序的界面与操作具有以下特点:
        1.界面开发成本低,速度快
        2.风格可控
        3.操作简单
        4.操作性能佳(具有接近原生App的性能)


小程序与H5区别:
        1.javascript的限制(小程序中没有cookie)
        2.改进优化:登陆方面-- H5  通过微信授权一般采用URL重定向的方式获取code
                       小程序 通过wx.login 获取code 避免了登陆重定向
                存储方面: 小程序用storage(5M)替代了H5的localstorage,
                    sessionstorage。支持同步异步
                  微信支付路径不再受限

不方便之处:    ①每个页面需要手动在app.json中进行注册
        ②打开页面有5个限制,开发时需控制打开页面的数量

---------------------------------------------

页面.json文件配置比app.json配置简单(页面的.json会覆盖app.json的内容)

onLaunch 函数全局只触发一次

App() 方法必须在app.js中注册,且不能注册多个

获取小程序实例: var appInstance = getApp()   不能私自调用生命周期函数

猜你喜欢

转载自blog.csdn.net/admin1008611/article/details/72475933