持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第2天
一、globalData的使用
作用:
app.js中的globalData存储的是全局数据,能在各个页面之间共同使用某些信息,可以对共享数据进行修改设置,以便其他页面根据数据变化进行相应调整。
使用方法:
- app.js中读取globalData,使用this即可。
- 其他js页面使用,开头需要声明 var app = getApp()
数据获取: app.globalData.name;
数据修改: getApp().globalData.name=“张三”,此时改的是全局变量的值,对本页面不起作用。要修改本页面的值,直接setData进行修改。
在小程序的所有页面中都可以随时调用和写入存放在GlobalData的数据。 无论是调用还是写入,第一步都是要让页面与App.js产生关联。所以在页面的对应的JS中,第一句话就要写上:var app = getApp();
GlobalData可以随时在页面中读取和存储数据,比Storage方便很多。
App({
globalData: { msg: 'hello' }
})
const app = getApp()
Page({
data: {
msg: app.globalData.msg
},
updateMsg() {
app.globalData.msg = '456'
this.setData({msg: app.globalData.msg})
}
})
二、 audio音频播放
音频文件的加入,是丰富小程序功能的常见手段。向微信小程序中插入音频文件,可以通过 <audio> 音频组件,或是 wx.playBackgroundAudio() API,但这两者的使用场合(生命周期)有些不同。
<audio> 音频组件的属性列表中, controls 属性尤为重要。 其默认值为 false,表示控制窗口默认情况下不出现。推荐在小程序里,将其值设置为 true,就可以将播放界面显示出来。
对于实现简单音频播放的,只需利用 JS 代码实现数据绑定即可。如果需要进行复杂的音频操作,则需要配合音频控制相关 API。一个小程中若使用多个 <audio>音频组件的话,几个 <audio> 音频组件能同时工作。
<audio> 音频组件的使用并非万能。当微信后台或退出小程序时, <audio> 音频组件播放音频会立即被暂停。 在上述情况中,若希望音频继续播放,就要用到 wx.playVoice()。
使用 wx.playBackgroundAudio() 播放的音频,无论是微信放入后台,或是退出小程序,音频依然会正常播放。 但若微信退出,音频的播放也会停止。 如若只需要简单地播放音频文件,单独使用 wx.playBackgroundAudio() 就足够了。
三、相机组件 CAMERA
使用camera组件后,只会触发摄像头,不会使用摄像头的默认样式,进入camera组件后,会全屏显示相机没有拍照按钮以及相机的各种样式。 将需要使用相机组件的wxml组件中输入camera标签
<camera
device - position="back"
flash="{{flash}}"
bindinitdone="cameraondonwn"
style="width:{{width}}px;
height:{{height}}px;
margin-left:0px;
z-index:1">
</camera>
此时相机就会铺满全屏,没有拍照按钮。此时的camera层级是最高的,如果添加view标签和image标签是不起作用的。
烟火向星辰,所愿皆成真!