微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)

这篇具有很好参考价值的文章主要介绍了微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

配置介绍

一个小程序应用程序会包括最基本的两种配置文件。一种是全局的 app.json 和 页面自己的 page.json

注意:配置文件中不能出现注释

全局配置app.json

app.json 是当前小程序的全局配置,包括了小程序的所有页面路径、界面表现、网络超时时间、底部 tab 等。普通快速启动项目里边的 app.json 配置

json中没有注释!!!

{
  "pages":[
    "pages/index/index",
    "pages/logs/logs"
  ],
  "window":{
    "backgroundTextStyle":"light",
    "navigationBarBackgroundColor": "#fff",
    "navigationBarTitleText": "WeChat",
    "navigationBarTextStyle":"black"
  }
}

可以在page中直接创建一个新的包:
示例:
微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)

微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)
这样子就会自动创建文件夹以及里面的配置文件。

字段的含义

  1. pages字段 —— 用于描述当前小程序所有页面路径,这是为了让微信客户端知道当前你的小程序页面定义在哪个目录。
  2. window字段 —— 定义小程序所有页面的顶部背景颜色,文字颜色定义等。
  3. 完整的配置信息请参考 app.json配置

page.json

这里的 page.json 其实用来表示页面目录下的 page.json 这类和小程序页面相关的配置。

开发者可以独立定义每个页面的一些属性,如顶部颜色、是否允许下拉刷新等等。

页面的配置只能设置 app.json 中部分 window 配置项的内容,页面中配置项会覆盖 app.jsonwindow 中相同的配置项。

属性 类型 默认值 描述
navigationBarBackgroundColor HexColor #000000 导航栏背景颜色,如 #000000
navigationBarTextStyle String white 导航栏标题颜色,仅支持 black / white
navigationBarTitleText String 导航栏标题文字内容
backgroundColor HexColor #ffffff 窗口的背景色
backgroundTextStyle String dark 下拉 loading 的样式,仅支持 dark / light
enablePullDownRefresh Boolean false 是否全局开启下拉刷新。 详见 Page.onPullDownRefresh
onReachBottomDistance Number 50 页面上拉触底事件触发时距页面底部距离,单位为px。 详见 Page.onReachBottom
disableScroll Boolean false 设置为 true 则页面整体不能上下滚动;只在页面配置中有效,无法在 app.json 中设置该项

视图层

WXML(WeiXin Markup Language)是框架设计的一套标签语言,结合基础组件、事件系统,可以构建出页面的结构。

数据绑定

普通写法

<view> {{ message }} </view>
Page({
  data: {
    message: 'Hello MINA!'
  }
})

组件属性

<view id="item-{{id}}"> </view>
Page({
  data: {
    id: 0
  }
})

bool类型

不要直接写 checked=“false”,其计算结果是一个字符串

<checkbox checked="{{false}}"> </checkbox>

运算

三元运算

<view hidden="{{flag ? true : false}}"> Hidden </view>

算数运算

<view> {{a + b}} + {{c}} + d </view>
Page({
  data: {
    a: 1,
    b: 2,
    c: 3
  }
})

逻辑判断

<view wx:if="{{length > 5}}"> </view>

字符串运算

<view>{{"hello" + name}}</view>
Page({
  data:{
    name: 'MINA'
  }
})

注意

花括号和引号之间如果有空格,将最终被解析成为字符串

列表渲染

wx:for

项的变量名默认为 item wx:for-item 可以指定数组当前元素的变量名

下标变量名默认为 index wx:for-index 可以指定数组当前下标的变量名

<view wx:for="{{array}}">
  {{index}}: {{item.message}}
</view>
Page({
  data: {
    array: [{
      message: 'foo',
    }, {
      message: 'bar'
    }]
  }
})

wx:for

渲染一个包含多节点的结构块 block最终不会变成真正的dom元素

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

wx:key

提高效率使用的

条件渲染

wx:if

在框架中,使用 wx:if="{{condition}}" 来判断是否需要渲染该代码块:

<view wx:if="{{condition}}"> True </view>

hidden

<view hidden="{{condition}}"> True </view>

类似 wx:if

频繁切换 用 hidden

不常使用 用 wx:if

WXSS

WXSS(WeiXin Style Sheets)是一套样式语言,用于描述 WXML 的组件样式。

与 CSS 相比,WXSS 扩展的特性有:

  • 尺寸单位
  • 样式导入

尺寸单位

  • rpx(responsive pixel): 可以根据屏幕宽度进行自适应。规定屏幕宽为750rpx。如在 iPhone6 上,屏幕宽度为375px,共有750个物理像素,则750rpx = 375px = 750物理像素,1rpx = 0.5px = 1物理像素。
设备 rpx换算px (屏幕宽度/750) px换算rpx (750/屏幕宽度)
iPhone5 1rpx = 0.42px 1px = 2.34rpx
iPhone6 1rpx = 0.5px 1px = 2rpx
iPhone6 Plus 1rpx = 0.552px 1px = 1.81rpx

建议: 开发微信小程序时设计师可以用 iPhone6 作为视觉稿的标准。

注意: 在较小的屏幕上不可避免的会有一些毛刺,请在开发时尽量避免这种情况。

样式导入

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

示例代码:

/** common.wxss **/
.small-p {
  padding:5px;
}
/** app.wxss **/
@import "common.wxss";
.middle-p {
  padding:15px;
}

内联样式

框架组件上支持使用 style、class 属性来控制组件的样式。

  • style:静态的样式统一写到 class 中。style 接收动态的样式,在运行时会进行解析,请尽量避免将静态的样式写进 style 中,以免影响渲染速度。
<view style="color:{{color}};" />
  • class:用于指定样式规则,其属性值是样式规则中类选择器名(样式类名)的集合,样式类名不需要带上.,样式类名之间用空格分隔。
<view class="normal_view" />

选择器

目前支持的选择器有:

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

全局样式与局部样式

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

基本组件

小程序提供了常用的标签组件用于构建页面

组件

view

类似 div

属性名 类型 默认值 说明
hover-class String none 指定按下去的样式类。当 hover-class="none" 时,没有点击态效果

代码

  <view hover-class="h-class">
  点击我试试
  </view>
  <!-- wxss -->
  .h-class{
    background-color: yellow;
  }

text

显示普通的文本 text只能嵌套text

属性名 类型 默认值 说明
selectable Boolean false 文本是否可选
decode Boolean false 是否解码

代码

  <text selectable="{{false}}" decode="{{false}}">&nbsp;</text>

image

图片标签,image组件默认宽度320px、高度240px

**注意:该标签 其实是 web中的 图片标签 和 背景图片的结合!!! 并且不支持以前的web中的背景图片的写法!!! **

属性名 类型 默认值 说明
src String 图片资源地址,支持云文件ID(2.2.3起)
mode String ‘scaleToFill’ 图片裁剪、缩放的模式
lazy-load Boolean false 图片懒加载。只针对page与scroll-view下的image有效

mode 有效值:

mode 有 13 种模式,其中 4 种是缩放模式,9 种是裁剪模式。

模式 说明
缩放 scaleToFill 不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素
缩放 aspectFit 保持纵横比缩放图片,使图片的长边能完全显示出来。
缩放 aspectFill 保持纵横比缩放图片,只保证图片的短边能完全显示出来。
缩放 widthFix 宽度不变,高度自动变化,保持原图宽高比不变
裁剪 top 不缩放图片,只显示图片的顶部区域
裁剪 bottom 不缩放图片,只显示图片的底部区域
裁剪 center 不缩放图片,只显示图片的中间区域
裁剪 left 不缩放图片,只显示图片的左边区域
裁剪 right 不缩放图片,只显示图片的右边区域
裁剪 top left 不缩放图片,只显示图片的左上边区域
裁剪 top right 不缩放图片,只显示图片的右上边区域
裁剪 bottom left 不缩放图片,只显示图片的左下边区域
裁剪 bottom right 不缩放图片,只显示图片的右下边区域

swiper

微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)

微信内置有轮播图组件

默认宽度 100% 高度 150px

属性名 类型 默认值 说明
indicator-dots Boolean false 是否显示面板指示点
indicator-color Color rgba(0, 0, 0, .3) 指示点颜色
indicator-active-color Color #000000 当前选中的指示点颜色
autoplay Boolean false 是否自动切换
interval Number 5000 自动切换时间间隔
circular Boolean false 是否采用衔接滑动

swiper

滑块视图容器。

swiper-item

滑块

默认宽度和高度都是100%

swiper-item相当于html中div盒子中的图片,每有一个图片,就需要一个swiper-item来装图片内容,也可以使用循环的方式绑定图片

navigator

导航组件 类似超链接标签

属性名 类型 默认值 说明
target String self 在哪个目标上发生跳转,默认当前小程序,可选值self/miniProgram
url String 当前小程序内的跳转链接
open-type String navigate 跳转方式

open-type 有效值:

说明
navigate 保留当前页面,跳转到应用内的某个页面,但是不能跳到 tabbar 页面
redirect 关闭当前页面,跳转到应用内的某个页面,但是不允许跳转到 tabbar 页面。
switchTab 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
reLaunch 关闭所有页面,打开到应用内的某个页面
navigateBack 关闭当前页面,返回上一页面或多级页面。可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层
exit 退出小程序,target="miniProgram"时生效

示例:
采用循环的方式:
wxml代码:

<swiper class="banners" indicator-dots autoplay  indicator-active-color="#d43c33" indicator-color="ivory">
    <swiper-item wx:for="{{imgUrl}}" wx:key="bannerId">
      <image mode="widthFix" src="{{item}}" />
    </swiper-item>
</swiper>

js data数据代码配置:

  data: {
    imgUrl: [
      "图片url",
      '图片url',
      '图片url',
      '图片url',
      '图片url',
      '图片url'
    ], //轮播图
  },

wxss代码配置:

.banners{
  width: 100%;
  height: 300rpx;
}

.banners image{
  height: 100%;
  width: 100%;
}

video

视频。该组件是原生组件,使用时请注意相关限制。文章来源地址https://www.toymoban.com/news/detail-427049.html

属性名 类型 默认值 说明
src String 要播放视频的资源地址,支持云文件ID(2.2.3起)
duration Number 指定视频时长
controls Boolean true 是否显示默认播放控件(播放/暂停按钮、播放进度、时间)
autoplay Boolean false 是否自动播放
loop Boolean false 是否循环播放
muted Boolean false 是否静音播放
<video src="{{src}}" controls></video>

到了这里,关于微信小程序---配置和属性(全局配置的简单使用,运算符以及一些常用属性)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序-----全局配置与页面配置

    目录 前言 全局配置文件 一、window 1. 小程序窗口的组成部分 2. window 节点常用的配置项 3. 设置导航栏的标题  4. 设置导航栏的背景色  5. 设置导航栏的标题颜色 6. 全局开启下拉刷新功能 7. 设置下拉刷新时窗口的背景色 8. 设置下拉刷新时 loading 的样式 9. 设置上拉触底的距离

    2024年01月17日
    浏览(48)
  • 微信小程序使用三元运算符

    针对wxml中的style的三元运算符 针对wxml中的src的三元运算符 针对wxml中的获取后台数据值的三元运算符 完整代码块 CSS样式

    2024年02月08日
    浏览(46)
  • 微信小程序 样式和全局配置

    wxss 把屏幕分为750个物理像素,大屏大,小屏小,随着设备不一致自动适配 推荐使用iPhone6作为标准,1个rpx = 0.5个px,把px乘以2就是rpx的参数 导入外部样式表  样式  权重一样时,局部样式可以覆盖全局样式 导航栏区域 navigationBar 背景区域 backgroud 页面主体区域 可以配置【导

    2024年02月07日
    浏览(50)
  • 微信小程序(三)页面配置与全局配置

    注释很详细,直接上代码 上一篇 新增内容: 页面导航栏的属性配置 全局页面注册配置 全局导航栏配置 样式版本 源码: (标准的json是不能加注释的,但为了方便理解咱做个违背标准的决定) 页面: index.json 效果演示: 全局: app.json 效果演示: 这里有小伙伴问了,我就只用

    2024年02月02日
    浏览(43)
  • 微信小程序地图控件Map的简单配置及使用

    .wxml .js .wxss

    2024年02月05日
    浏览(64)
  • 微信小程序 样式和全局配置 WXSS

    wxss 把屏幕分为750个物理像素,大屏大,小屏小,随着设备不一致自动适配 推荐使用iPhone6作为标准,1个rpx = 0.5个px,把px乘以2就是rpx的参数 导入外部样式表  样式  权重一样时,局部样式可以覆盖全局样式 导航栏区域 navigationBar 背景区域 backgroud 页面主体区域 可以配置【导

    2024年02月15日
    浏览(64)
  • 微信小程序全局配置API域名和url

    微信小程序和后台进行交互是通过API请求数据,所以API请求地址的管理 就非常重要,如果在wx.request的时候使用写url地址的方式,那后面要是api地址变化了,就要到每个有请求的地方进行修改url,是大项目的话就会很麻烦,如果配置了全局请求地址修改起来就简单很多。 1.项

    2024年02月12日
    浏览(83)
  • 微信小程序之全局配置-window和tabBar

    学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您: 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持,想组团高效学习… 想写博客但无从下手,急需写作干货注入能量… 热爱写作,愿意让自己成为更好

    2024年01月25日
    浏览(77)
  • 【微信小程序入门篇】全局配置 | 页面切换之tabBar配置项

    下面引用开发者文档中的介绍: 如果小程序是一个多 tab 应用(客户端窗口的底部或顶部有 tab 栏可以切换页面),可以通过 tabBar 配置项指定 tab 栏的表现,以及 tab 切换时显示的对应页面。 tabBar:翻译为标签栏。 下面展示了两个小程序的 tab 栏,分别是在顶部、底部。 当我

    2024年02月02日
    浏览(50)
  • 微信小程序 使用全局变量

    微信小程序里面有个 app.js ,我们可以在这个里面设置全局变量, 全局变量的定义:  globalData: {         userInfo: null,         tempFilePathslist: []     }  全局变量的获取: 在 app.js 文件中,直接使用,如: var gettempFilePathslist = this.globalData.tempFilePathslist 在 其他非app

    2024年02月02日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包