微信小程序标签语言

微信小程序标签语言

1、<text>

 <text>表示一段行内文本,类似于 HTML 语言的<span>标签,多个<text>标签之间不会产生分行。在小程序中只有被<text>包围的文本才能在手机上被长按选中。

 

2、<view>

<view>标签表示一个区块,用于跟其他区块分隔,类似 HTML 语言的<div>标签,<text></text>标签可以嵌套,可以编译转义字符,而不是把它当作普通的字符串。

<view>
  <text>hello world</text>
</view>

 

3、<image>

(1)src属性
小程序代码上传要求在2M以内,因此静态资源比如图片等一般不与代码文件放在一块(因为很容易超出预算)

因此image的src属性不支持相对路径,src的属性值必须是绝对路径

<!-- 以下为错误写法 小程序image标签的src属性不支持相对路径 -->
<image src="../../img/random.jpg"></image>

<!-- 正确写法 -->
<image src="https://z3.ax1x.com/2021/03/31/ckVNT0.jpg"></image>
除了将图片放在服务器数据库上,还可以将图片上传到图床上,并由图床生成图片的绝对路径

(2)mode属性

基础知识:

1)小程序图片默认宽高:320px*240px

2)image标签默认不保持原图片的宽高比,自己设置宽高时容易使图片变形

 

mode常用属性值:

1)aspectFit 可以使图片的较长边完整地显现出来,但又不会超出image设置的宽高大小, 常用于轮播图

<image mode="aspectFit"src="https://z3.ax1x.com/2021/03/31/ckVNTo.jpg"></image>

2)aspectFill 可以使图片的短边完整地显现出来,设置该值可能看不到完整的较长边 较少用

<image mode="aspectFill"src="https://z3.ax1x.com/2021/03/31/ckVNT0.jpg"></image>

3)widthFix 相当于WEB中只设置宽而不设置高,图片将等比例缩放 最常用

<image mode="widthFix"src="https://z3.ax1x.com/2021/03/31/ckVNTO.jpg"></image>

4)方向值top、bottom、left、right、top left、top right、bottom left、bottom right,不缩放图片,将图片置于对应的方向上,类似于background-position,当设置的image宽高小于默认宽高时,将对图片进行对应方向上的裁剪

<image mode="top  bottom left right top left top right bottom left bottom right" src="https://z3.ax1x.com/2021/03/31/ckVNT0.jpg"></image>

 

4、<page>

小程序默认在我们的控件外还套有一个page标签,可以通过设置page的样式,改变全屏的颜色。

 

5、<swiper>

swiper标签是微信小程序中自带的轮播图组件,我们可以快速的创建一个轮播图,不再需要像在HTML中那样麻烦。swiper组件宽高必须设置在根节点<swiper></swiper>(swiper-item仅可放置在<swiper/>组件中,继承swiper宽高自动设置为100%,但是image不会继承)。

语法结构:

<swiper>
    <swiper-item >
        <image src=" ">    </image>
    </swiper-item>
</swiper>    

 

 

 

 

6、< block>

<block> 并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制属性,常和“wx:if”、“wx:else” 、“wx:for”联用。

 因为 wx:if 是一个控制属性,需要将它添加到一个标签上。如果要一次性判断多个组件标签,可以使用一个 <block> 标签将多个组件包装起来,并在上边使用 wx:if 控制属性。

<block wx:if="{{true}}">
    <view> view1 </view>
    <view> view2 </view>
</block>

 

类似 block wx:if,也可以将 wx:for 用在<block/>标签上,以渲染一个包含多节点的结构块。例如:

<block wx:for="{{[1, 2, 3]}}">
    <view> {{index}}: </view>
    <view> {{item}} </view>
</block>

 

7、<scroll-view>

flex 布局无效。

加载更多一定要给他一个高度的设置,官方文档中一般高度是1336,导航栏一般高是400rpx。

 

8、<input>

(1)微信小程序的input不支持letter-spacing的属性

(2)将input的宽度设置成250%(注意,父元素需要设置overflow:hidden,否则在苹果手机上将出现滑动),并设置absolute定位将input输入框定位出当前页面。

(3)将input输入的值用absolute定位到4个框框里面,设置letter-spacing将文字隔开。

 

9、<icon>

(1)type 是图标显示的类型 可取值 success, success_no_circle, info, warn, waiting, cancel, download, search, clear

(2)size 是图标显示的大小 默认单位是 px

(3)color 是图标的颜色

 

10、<switch>

 

 

 

 

11、<slider>

slider是进度条,bindchange是slider的拖动事件,playtime 已播放时间,alltime 总时间

 注意:step最好是能被整除。

 

12、<radio-group>/<radio-group>

 

 

 

13、<checkbox-group>/<checkbox-group>

 

 

 

14、<form>

form表单,将组件内输入的"switch","input","checkbox","slider","radio","picker"的值进行提交,数据的格式为:name:value,所以表单中控件都需要添加name属性,否则找不到对应控件的值。其主要属性:

 reset/submit 按钮调用会触发各自的函数

 

 

 

15、<button>

 

16、<map>

注:研究该组件最好用真机去测试,因为在模拟器上很多效果不支持。

 

posted @ 2023-02-13 09:04  慕容冰菡  阅读(126)  评论(0编辑  收藏  举报