123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- const app = getApp()
- Page({
- data: {
- avatarUrl: './user-unlogin.png',
- userInfo: null,
- logged: false,
- takeSession: false,
- requestResult: '',
- // chatRoomEnvId: 'release-f8415a',
- chatRoomCollection: 'chatroom',
- chatRoomGroupId: 'demo',
- chatRoomGroupName: '聊天室',
- // functions for used in chatroom components
- onGetUserInfo: null,
- getOpenID: null,
- },
- onLoad: function() {
- // 获取用户信息
- wx.getSetting({
- success: res => {
- if (res.authSetting['scope.userInfo']) {
- // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
- wx.getUserInfo({
- success: res => {
- this.setData({
- avatarUrl: res.userInfo.avatarUrl,
- userInfo: res.userInfo
- })
- }
- })
- }
- }
- })
- this.setData({
- onGetUserInfo: this.onGetUserInfo,
- getOpenID: this.getOpenID,
- })
- wx.getSystemInfo({
- success: res => {
- console.log('system info', res)
- if (res.safeArea) {
- const { top, bottom } = res.safeArea
- this.setData({
- containerStyle: `padding-top: ${(/ios/i.test(res.system) ? 10 : 20) + top}px; padding-bottom: ${20 + res.windowHeight - bottom}px`,
- })
- }
- },
- })
- },
- getOpenID: async function() {
- if (this.openid) {
- return this.openid
- }
- const { result } = await wx.cloud.callFunction({
- name: 'login',
- })
- return result.openid
- },
- onGetUserInfo: function(e) {
- if (!this.logged && e.detail.userInfo) {
- this.setData({
- logged: true,
- avatarUrl: e.detail.userInfo.avatarUrl,
- userInfo: e.detail.userInfo
- })
- }
- },
- onShareAppMessage() {
- return {
- title: '即时通信 Demo',
- path: '/pages/im/room/room',
- }
- },
- })
|