程序开发微信小程序开发微信小程序开发

微信小程序框架解析

2016-12-25  本文已影响405人  糖小工

What?


How?

交互原理

逻辑层(App Service)


视图层(View)


App Service -Manager

wxml js

生命周期

Paste_Image.png

View - WXML

WXML ---compiler--->JS:generateFunc ---Data--->VirtualTree ----Virtual DOM--->Dom Tree


WXML 具有什么能力?

<!-- wxml -->
<view> {{ message }}</view>
<!--wxml-->
<view wx:for="{{array}}"> {{item}} </view>
<!--wxml-->
<view wx:if="{{view == 'WEBVIEW'}}"> WEBVIEW </view>
<view wx:elif="{{view == 'APP'}}"> APP </view>
<view wx:else="{{view == 'MINA'}}"> MINA </view>
<!--wxml-->
<template name="staffName"> <view> FirstName: {{firstName}}, LastName: {{lastName}} </view></template>
<template is="staffName" data="{{...staffA}}"></template>
<template is="staffName" data="{{...staffB}}"></template>
<template is="staffName" data="{{...staffC}}"></template>
<view bindtap="add"> {{count}} </view>

page.js


Page({
 data: { 
  message: 'Hello MINA!',
  array: [1, 2, 3, 4, 5],
  view: 'MINA',
  staffA: {firstName: 'Hulk', lastName: 'Hu'}, 
  staffB: {firstName: 'Shang', lastName: 'You'},
  staffC: {firstName: 'Gideon', lastName: 'Lin'}
  count: 1
 },
 add: function(e) {
   this.setData({ count: this.data.count + 1 }) 
 }
})

View - WXSS

WXSS -------compiler-----> JS -----width,DPR------> CSS

View -Render

与Natice通信图示 打包
上一篇 下一篇

猜你喜欢

热点阅读