현재 위치 - 인적 자원 플랫폼망 - 미니프로그램 개발 - Uni-app 는 텅스텐클라우드 im 을 사용하여 app 대화방을 개발합니다.
Uni-app 는 텅스텐클라우드 im 을 사용하여 app 대화방을 개발합니다.
구성 요소 주소: /document/product/269/64507

어디로 가서 자습서 소개를 찾고, 무엇을 보고 싶은지, 어떤 문서를 개발해야 한다.

Npm 설치 tim-wx-sdk@2. 15.0-저장

Npm 설치 cos-wx-SDK-V5 @ 0.7.11-save

--

Tim-wx-sdk 에서 Tim 가져오기

"cos-wx-sdk-v5" 에서 cos 가져오기

' 에서 로거를 가져옵니다. /utils/logger'; // app.js

에서 {genTestUserSig} 를 가져옵니다. /debug/GenerateTestUserSig.js'

App.vue 파일 아래의 onLaunch 루프에서 다음을 수행합니다.

///? UserInfo 는 사용자가 로그인했는지 여부를 결정하는 데 사용됩니다.

만약 (userInfo! = '' || userInfo! = 정의되지 않음) {

If (uni.getstoragesync ('zuserinfo'). Role = =1| | uni.getstoragesync ('zuserinfo'). Role == 2) {

//인스턴트 메시징 연결

//Tim 에 액세스할 수 있는 경우 uni.tim 을 uni 로 변경합니다. $ 투이키트.

대학. $TUIKit = TIM.create({

-응? SDK AppID:' '// 당신이 신청한 appid 를 기입하세요.

});

대학. $TUIKit.registerPlugin({

-응? Cos-wx-sdk': COS

});

대학. $ resetlogindata = this.resetlogindata (userinfo)

대학. $ TUIKitTIM = TIM

대학. $TUIKitEvent = TIM 입니다. 사건;

대학. $TUIKitVersion = TIM 입니다. 버전;

대학. $TUIKitTypes = TIM 입니다. 유형; //시스템 수준 이벤트 수신

대학. $TUIKit.on(uni). $TUIKitEvent. SDK_NOT_READY, this.onsdknotready);

대학. $TUIKit.on(uni). $TUIKitEvent. KICKED_OUT, this.onkickedout);

대학. $TUIKit.on(uni). $TUIKitEvent. 오류, this.ontimerror);

대학. $TUIKit.on(uni). $TUIKitEvent. NET_STATE_CHANGE, this.onnet state change);

대학. $TUIKit.on(uni). $TUIKitEvent. SDK_RELOAD, this.on SDK reload);

대학. $TUIKit.on(uni). $TUIKitEvent. SDK_READY, this.onsdkready);

}

}

// TODO:

-응? ResetLoginData (정보) {

이거 = 이거

This.globaldata.expiresin = \ "\";

This.globaldata.sessionid = \ "\";

This.globalData.userInfoIm = {

-응? UserID: info.userId

-응? UserSig: info.txSig,

-응? 토큰: info.token,

-응? 전화: 정보. 전화

}

This.globaldata.userprofile = null;

대학. $ tuikit.login ({userid: info.userid.tostring (), userSig: info.txSig.toString()}

。 그런 다음 (함수 (imResponse) {

-응? //console.log (imresponse.data); //로그인에 성공했습니다

// _this.getUpdateMyProfile ()

-응? If (imresponse.data.repeat login = = = = true) {

//계정이 로그인했음을 나타냅니다. 이 로그인 작업은 중복 로그인입니다. V2.5. 1 의 지원

//console.log (imresponse.data.errorinfo);

-응? }

}) 을 참조하십시오

。 Catch (함수 (imError) {

-응? Console.warn ('로그인 오류:', imerror); //로그인 실패 정보

});

-응? },

OnTIMError() {},

-응? OnNetStateChange() {},

-응? OnSDKReload() {},

-응? OnSDKReady (이벤트) {

이거 = 이거

_this.getUpdateMyProfile ()

_this.getImUnread ()

},

-응? OnSdkNotReady() {

This.getImLogin ()

},

-응? OnKickedOut() {

Uni.showToast({

-응? 제목:' 당신은 조립 라인에서 쫓겨났습니다.'

-응? 아이콘: 오류

});

Userinfo ='' 로 만들기

Uni.setStorageSync('zuserInfo', userInfo)

SetTimeout(()= & gt;; {

Uni. redirecto({

-응? Url: "/pages/login/login" 입니다

});

},2000)

// uni.navigateTo({

//? Url:' 입니다. /pages/TUI- 로그인/로그인'

//});

-응? },

LogoutTim() {

대학. $TUIKit.logout ()

},

Uni.navigateTo({

Url:' /pages/TUI-Chat/chat? Conversationid = C2C'+this.info.user _ id

});

GetImUnread() {

대학. $TUIKit.getConversationList (). 그런 다음 (RES =>{

//console.log (res.data.conversationlist)

For (let I of res.data.conversation list) {

If( i.unreadCount! = 0) {

Uni. showtabbareddot({ index:2}) 입니다

돌아오다

}

}

}). catch (fail = > {

// console.log (실패)

});

},

ernal nofollow">인적 자원 플랫폼망 All rights reserved