这个框架类似于之前看的vue。
个人理解:
1、专注于做wxml和wxss的书写。而js呢,主要就是处理各种数据。不操作dom。而是通过数据状态的变化,来操作dom。有点类似于tmpl:模板根据数据来变化。而js呢,只根据用户的操作来改变数据,并把数据传给模板,并不直接操作页面元素的展示与否。
哈哈,感觉类比了tmpl之后,有点明白这些框架了。
2、这个框架中,js中数据不需要手动写类似于$("#model").tmpl(data).appendTo("#div")了,而是通过Page构造器。当数据变化时,也会自动改变页面展示。
tmpl中不能直接在元素中绑定事件,而用这个框架可以。这也可能为啥tmpl是静态模板吧。
Page构造器中会有一个data。里面包含了所有页面需要的数据。也就是与页面的需要数据的地方进行了绑定。
Page构造器可以接收wxml发生来的事件,并找到对应的事件函数,直接该事件函数,通过事件引起的数据变化会自动在页面与该数据绑定的地方展示。
逻辑层(App Service)
1、增加App和Page方法,JavaScript在web的一些能力不能用,如:document,window等。
App()
用来注册一个小程序,接收一个object参数,指定小程序的生命周期函数等。
包括:小程序的初始化,从前台到后台,从后台到前台,调用API错误时,可以自定义其他函数。
注意:
App()必须在app.js中注册,且不能注册多个。- 不要在定义于
App()内的函数中调用getApp(),使用this就可以拿到 app 实例。 - 不要在 onLaunch 的时候调用
getCurrentPages(),此时 page 还没有生成。 - 通过
getApp()获取实例之后,不要私自调用生命周期函数。
getApp()
全局的 getApp() 函数可以用来获取到小程序实例。
场景值:
获取用户运行小程序的场景,不是很清楚实际使用是什么样的。
应该是判断用户进入到当前小程序的场景。比如:用户根据扫描二维码进入,场景值是1011.
类似这种,获取这些场景值之后,可以进行分析,监测等等。
浙公网安备 33010602011771号