집 >위챗 애플릿 >미니 프로그램 개발 >WeChat 애플릿의 변수 및 범위에 대한 상세한 분석
이 글은 WeChat 애플릿의 변수와 범위에 대한 자세한 분석을 제공합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
먼저 전역 변수
app.js의 변수와 메서드는 전역적입니다.
//app.js App({ onLaunch: function () { // 展示本地存储能力 var logs = wx.getStorageSync('logs') || [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) // 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId } }) // 获取用户信息 wx.getSetting({ success: res => { if (res.authSetting['scope.userInfo']) { // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 wx.getUserInfo({ success: res => { // 可以将 res 发送给后台解码出 unionId this.globalData.userInfo = res.userInfo // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } }) } } }) }, globalData: { userInfo: null, basePath: 'http://127.0.0.1:8086' } })
다른 페이지에서는 getApp()을 통해 내부의 메소드와 변수를 얻을 수 있습니다. 콘솔이 나온 후:
우리가 미리 설정한 basePath를 얻으려면 다음을 수행할 수 있습니다.
var app=getApp(); var basePath = app.globalData.basePath;
사용자 가져오기 로그인 정보나 기타 방법도 마찬가지입니다.
두 번째, 로컬 페이지 내 데이터 상호 작용
로컬 페이지의 모든 데이터는 js의 데이터 개체에서 유래합니다.
페이지에서 data 안의 데이터를 직접 사용할 수 있습니다.
Assignment:
areaChange:function(e){ //这里获取到了数组角标 console.log(e.detail.value) var index1 = e.detail.value this.setData({ index: index1 }) // console.log("地区:" + this.data.areaListArray[index1]) console.log(this.data.areaList[index1]) console.log(this.data.areaIdList[index1]) }
메소드 내에서 this.setData()를 직접 사용하여 변수를 정의하고 값을 할당할 수 있습니다. 페이지 전체에서 사용됩니다.
onLoad: function (options) { var that = this; var app=getApp(); console.log(app); var basePath = app.globalData.basePath; wx.request({ method:"GET", url: basePath +'/area/getAreaByLevel?level=1', success: function (res) { console.log(res); var areaListArray = []; var areaPkIdArray = []; for(var index in res.data.data){ areaListArray.push(res.data.data[index].area) areaPkIdArray.push(res.data.data[index].pkId) } that.setData({ // projectList : res.data.data.data, // fileUrl: res.data.data.fileSystem areaList: areaListArray, areaIdList: areaPkIdArray }) }, fail: function (res) { console.log(res); } }) },
알 수 없는 것을 가리키는 경우 사용하기 전에 이를 다른 변수에 할당할 수 있습니다.
이 예에서는 this를 that에 할당하여 사용합니다.
관련 추천:
WeChat 미니 프로그램 예: 외부 js 파일(그림 및 텍스트)을 도입하는 방법
WeChat 미니 프로그램 예: WeUI 프레임워크 도입 코드 구현
위 내용은 WeChat 애플릿의 변수 및 범위에 대한 상세한 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!