微信小程序- 基础学习

发布时间:2024年01月14日
创建一个小程序

1.设置项目名称

2.设置路径

3.AppID (在微信公众号平台申请)

注册登录以后,开发–> 开发设置中查看APPID
在这里插入图片描述
在这里插入图片描述

4.开发模式

5.选择模板(一般为JavaScript)
在这里插入图片描述

目录结构

在这里插入图片描述

窗口配置
属性类型默认值描述
navigationBarBackgroundColorHexColor#000000导航栏背景颜色,如 #000000
navigationBarTextStylestringwhite导航栏标题、状态栏颜色,仅支持 black / white
navigationBarTitleTextstring导航栏标题文字内容
navigationStylestringdefault导航栏样式,仅支持以下值: default 默认样式 custom 自定义导航栏,只保留右上角胶囊按钮。
homeButtonbooleandefault在非首页、非页面栈最底层页面或非tabbar内页面中的导航栏展示home键
backgroundColorHexColor#ffffff窗口的背景色
backgroundTextStylestringdark下拉 loading 的样式,仅支持 dark / light
backgroundColorTopstring#ffffff顶部窗口的背景色,仅 iOS 支持
backgroundColorBottomstring#ffffff底部窗口的背景色,仅 iOS 支持
enablePullDownRefreshbooleanfalse是否开启全局的下拉刷新。
onReachBottomDistancenumber50页面上拉触底事件触发时距页面底部距离,单位为 px。
"window": {
    "navigationBarTextStyle": "white",
    "navigationBarTitleText": "我的微信小程序",
    "navigationStyle": "default",
    "backgroundColor": "#ffffff",
    "backgroundColorTop": "red"
  },
小程序wxml组件
1.view

视图容器 类似html中的div

<view>A</view>
2.scroll-view

可滚动视图区域。使用竖向滚动时,需要给scroll-view一个固定高度,通过 WXSS 设置 height

属性类型默认值必填说明
scroll-xbooleanfalse允许横向滚动
scroll-ybooleanfalse允许纵向滚动
<scroll-view scroll-x scroll-y class="container2">
  <view>A</view>
  <view>B</view>
  <view>C</view>
</scroll-view>
3.swiper

滑块视图容器(主要用来实现轮播图)。其中只可放置swiper-item组件,否则会导致未定义的行为,出现错误。

属性类型默认值必填说明
indicator-dotsbooleanfalse是否显示面板指示点
indicator-colorcolorrgba(0, 0, 0, .3)指示点颜色
indicator-active-colorcolor#000000当前选中的指示点颜色
autoplaybooleanfalse是否自动切换
currentnumber0当前所在滑块的 index
intervalnumber5000自动切换时间间隔
durationnumber500滑动动画时长
circularbooleanfalse是否采用衔接滑动
<swiper class="swiper-container"
    indicator-dots 
    indicator-color="rgba(0, 0, 0, .3)" 
    indicator-active-color="green" 
    autoplay
    current="1" 
    interval="2000" 
    duration="2000" 
    circular>
  <swiper-item>
    <view class="item">A</view>
  </swiper-item>
  <swiper-item>
    <view class="item">B</view>
  </swiper-item>
  <swiper-item>
    <view class="item">C</view>
  </swiper-item>
</swiper>
4.文本
  • text
属性类型默认值必填说明
selectablebooleanfalse文本是否可选 (已废弃)
user-selectbooleanfalse文本是否可选,该属性会使文本节点显示为 inline-block
  • rich-text 富文本

可以使用nodes属性 来使用html组件

属性类型默认值必填说明
nodesarray/string[]节点列表/HTML String
<!-- selectable 长按选中 -->
<text selectable>15101230564</text>
<rich-text nodes="<h1>只是表头</h1>"></rich-text>
5.button 按钮
属性类型默认值必填说明
sizestringdefault按钮的大小 (default默认大小、mini小尺寸)
typestringdefault按钮的样式类型(primary绿色、default白色、warn红色)
plainbooleanfalse按钮是否镂空,背景色透明
disabledbooleanfalse是否禁用
loadingbooleanfalse名称前是否带 loading 图标
form-typestring用于form组件,点击分别会触发 form组件的 submit/reset事件
<button type="default">按钮</button>
<button type="primary">绿按钮</button>
<button type="warn"> 红按钮</button>
<button size="default" type="primary">默认大小</button>
<button size="mini" type="primary">小按钮</button>
<button size="mini" type="primary">小按钮</button>
<button plain type="primary">镂空按钮</button>
<button disabled plain type="primary">禁用按钮</button>
<button loading type="primary">加载按钮</button>
6.image 图片

支持 JPG、PNG、SVG、WEBP、GIF 等格式

属性类型默认值必填说明
srcstring图片资源地址
modestringscaleToFill图片裁剪、缩放的模式

mode的参数

scaleToFill缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素
aspectFit缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。
aspectFill缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。
widthFix缩放模式,宽度不变,高度自动变化,保持原图宽高比不变
heightFix缩放模式,高度不变,宽度自动变化,保持原图宽高比不变
<image src="../../img/4f385d8183ddd7690e4744e4215c5345.jpg"></image>
常用语法
插值表达式

1.js文件中声明参数

data: {
    msg: '这是一个消息',
    randomNum: Math.random() * 10
  },

2.页面使用

<view>
 {{msg}}
 {{randomNum}}
 {{ randomNum > 5?'大于5':'小于5'}}
</view>
条件渲染

1.wx:if 创建或移除

wx:if ---- wx:else 结构不能打断

<view wx:if="{{false}}">A</view>
<view wx:elif="{{false}}">B</view>
<view wx:elif="{{false}}">C</view>
<view wx:else>E</view>

多个元素嵌套时,使用block

<!-- block 控制一整个元素显示和移除 -->
<block wx:if="{{false}}">
<view>hello</view>
<view>world</view>
<view>!!!!!!!</view>
</block>

2.hidden 隐藏元素 true 隐藏 false 显示

<view hidden="{{true}}">大家好,欢迎来到这里</view>
<view hidden="{{false}}">高哥,我会想念你的</view>

3.hidden 和wx:if 的区别

  • hidden属性的隐藏和显示,wx:if是通过样式(display: none;)来创建或移除元素
  • hidden属性 – true 隐藏 false 显示,wx:if – true 显示 false 隐藏
列表渲染

wx:for 循环

  • wx:key=“id” 默认使用index,用来索引集合元素
  • wx:for-item=“user” 对item 重新命名
  • wx:for-index=“idx” 对index重新命名
<view wx:for="{{userList}}" wx:key="id" wx:for-item="user" wx:for-index="idx" >{{idx}} -- {{user.id}} -- {{user.name}}</view>
事件
1.bindinput 输入框输入事件
<input  bindinput="getInput" type="text" />
2.bind:tap=“” (bindtap=) 触摸事件
<button bind:tap="showMsg" type="primary">点击</button>
传参

data-*='参数值' *参数名

<button data-age="{{20}}" data-name="真三" bind:tap="getStu" >传参</button>
数据同步

1.设置输入事件,并将获取的数据赋值给参数

  setMsg(e) {
    // console.log(e.detail.value);
    this.setData({
      msg: e.detail.value
    })
  }

2.页面渲染

<rich-text nodes="<h1>{{msg}}</h1>"></rich-text>
<input  bindinput="setMsg" type="text"/>
文章来源:https://blog.csdn.net/ji_xin0721/article/details/135510923
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。