小程序 视图层分析

2449059-2549ac2d6ae23c1f.jpg
wchat.jpg
视图层分析
1、[page-name].wxml页面结构

WXML(WeiXin Markup Language)是MINA框架设计的一套标签语言,基于XML。

结合一些基础组件、事件系统、模板数据绑定,可以构建出页面的结构。

简单来说:wxml ≈ xml + 事件系统 + 模板引擎

例如:

// js
Page({  data: {    todos: [
        { text: 'JavaScript', completed: false },
        { text: 'JavaScript+', completed: false },
        { text: 'JavaScript++', completed: false }
    ]
},
completed (e) { ... }
})

<!-- wxml -->
<view>
  <view wx:for="{{ todos }}">
    <block wx:if="{{ !item.completed }}">
      <text>{{ item.text }}</text>
      <button bindtap="completed" data-item-index="{{ index }}"> √ </button>
    </block>
  </view>
</view>
2、[page-name].wxss页面样式

WXSS(WeiXin Style Sheets)是MINA框架设计的一套标签语言,基于XML。

WXSS用来决定了在WXML中定义的组件应该怎么显示。

为了适应广大的前端开发者,我们的WXSS具有CSS大部分特性。 同时为了更适合开发微信小程序,我们对CSS进行了扩充以及修改。

与CSS相比我们扩展的特性有:

  • 尺寸单位
  • 样式导入(CSS也有)
尺寸单位

rpx(responsive pixel): 可以根据屏幕宽度进行自适应。规定屏幕宽为750rpx。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素。

rem(root em): 规定屏幕宽度为20rem;1rem = (750/20)rpx 。

设备rpx换算px (屏幕宽度/750)px换算rpx (750/屏幕宽度)rem换算rpx (750/20)
iPhone51rpx = 0.42px1px = 2.34rpx1rem = 37.5rpx
iPhone61rpx = 0.5px1px = 2rpx1rem = 37.5rpx
iPhone6s1rpx = 0.552px1px = 1.81rpx1rem = 37.5rpx

建议: 开发微信小程序时设计师可以用 iPhone6 作为视觉稿的标准。
注意: 在较小的屏幕上不可避免的会有一些毛刺,请在开发时尽量避免这种情况。

样式导入

使用@import语句可以导入外联样式表,@import后跟需要导入的外联样式表的相对路径,用;表示语句结束。

@import "common.wxss";text {  background-color: #ff0;
}
选择器

目前只支持如下选择器

选择器样例样例描述
.class.intro选择所有拥有 class=“intro” 的组件
#id#firstname选择拥有 id=“firstname” 的组件
elementview选择所有 view 组件
element, elementviewcheckbox 选择所有文档的 view 组件和所有的 checkbox 组件
::afterview::after在 view 组件后边插入内容
::beforeview::before在 view 组件前边插入内容

全局样式与局部样式

定义在app.wxss中的样式为全局样式,作用于每一个页面。在[page-name].wxss文件中定义的样式为局部样式,只作用在对应的页面,并会覆盖app.wxss中相同的选择器。

如果你有更好的心得和建议,欢迎拍砖一起探讨。
欢迎加入【编程技术微分享】,加入(596888158)请留言,或联系QQ:Mr.Chen(1182929304)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值