1.各个文件介绍:
app.json :全局配置文件;app.wxss:全局样式文件;app.js:入口文件;
project.config.json:项目配置文件;sitemap.json:SEO配置文件(方便小程序被用户找到)
Pages目录:用于存放所有的页面; untils:用于存放工具类文件
2.页面组成
2.1 xxx.wxml:相当于html文件
xxx.wxss:相当于css文件
xxx.js:交互文件
xxx.json:当前页面的配置文件
(①在wxss文件中,最好不要写标签选择器和id选择器,统一写类选择器;②全局样式app.wxss文件中定义得到选择器,在所有的页面中生效;③页面中宽度及高度用vw描述,witdh=100vw就是宽度占据屏幕100%;④)
2.2 view相当于html中的div标签;text组件相当于span标签;<image/>(闭合)组件相当于img组件(图片地址(src=" 地址")最好全部采用网络图片,因为小程序的总体积不允许超过2MB)
swiper:滑块组件;swiper-item:放在swiper组件中;indicator-dots:是否显示面板指示点;indicator-color:指示点颜色;indicator-active-color:当前选中的指示点颜色;autoplay:自动播放;interval:自动 切换时间间隔(默认3秒);circular:是否采用衔接滑动
window:
navigationBarBackgroundColor:导航栏背景颜色;navigationBarTextStyle:导航栏标题颜色,仅支持 black / white;navigationBarTitleText:导航栏标题文字内容
当页面配置与全局配置冲突时,优先级更高的是:页 面 配 置
2.3 calc( )函数,用于计算, 1px = 2rpx (rpx是响应式单位)
2.4 Page( ) 函数,返回页面对象,该函数需要传一个配置参数,这个配置参数是一个对象类型。
2.5 data 选项,定义页面的数据
2.6 {{ }} 是 插值表达式 ,wxml页面中可以使用插值表达式来使用js中定义的数据。
例如
2.7 wx:for = {{ songs }} ,(songs是data中定义的数组,该数字中放的是几个对象),wx:for指令用于循环列表,循环出来的每一项通过item返回,每一项对应的索引,通过index返回,如下
循环列表时,添加wx:key 的好处是:将来列表发生变化时重新渲染列表的损耗会更低。
2.8 js文件中的 this 返回的是当前页面对象,bindtap:触屏事件,相当于网页中的点击事件。微信小程序网页没法传参。data- 属性可以给标签绑定属性,在事件中,保存在currentTarget中的dataset中,例: let {currentTarget:{dataset:{index}}} = e,对页面数据执行完毕后,需要使用 setData( ) 函数来重新渲染页面;
2.9 隔行变色:通过给class添加一个三元运算符 class = "item {{ index%2===0 ? 'bg':' ' }}"
2.10 wx:if( ) 用于条件渲染,条件为真则生成里面的内容,条件为假不会生成里面的内容(每次重新生成内容)
hidden同理,条件为真则隐藏里面的内容,条件为假则显示里面的内容(每次切换样式)
如若频繁切换,则使用hidden比较好
3.tabBar
3.1在app.json文件中配置,所有的页面要在"pages"中配置,每一个页面在tabBar中的"list"里配置
3.2 navigator组件,就相当于网页中的超链接,<navigator url ="../detail/detail"> 详情页 </navigator>,如果要跳转到tabBar页面,则需要添加open-type="switchTab" 属性,
3.3 wx.navigateTo( )方法,是全局API跳转,用于跳转普通页面。
3.4 wx.switchTab( ) 方法,用于跳转tabBar页面。
4.提示框
提示框 wx.showModal( )方法,打开确认框;
delsongs() ( 删除歌曲 )
content: " 是否确定删除 "
success: ( { confirm } )=>{ if(confirm){ 里面写删除的代码 } }
wx.showToast( )方法,打开消息框;
ttile:消息框的内容,icon:消息框的图标,duration:消息框显示时间,mask:蒙板
5.utils
5.1 msg.js 消息类的方法
let $msg = (title,icon='success',duration=1500) =>{ wx.showToast({
title,icon,duration,mask:true
})}
使用exports导出成员,使用import导入成员
定义消息框方法,并导出:
export let $msg = (title,icon='success',duration=1500) =>{ wx.showToast({
title,icon,duration,mask:true
})},如下图
import { $msg } from ' ../../utils/msg '
$msg( ' 删除成功' )
将封装的消息框方法,注册到全局对象wx中,并在app.js中导入。
import './utils.msg'
6.
标签scroll-view:滚动栏,scroll-y:垂直方向的滚动