| waitForElementToDisplay( | |
| "#feed-profile-tab", | |
| function(){ | |
| const userModel = { | |
| data() { | |
| return { | |
| userId: '', | |
| nickname: '', | |
| likeCount: 0, | |
| editMode: false, | |
| loading: false, | |
| } | |
| }, | |
| methods: { | |
| close() {}, | |
| mounted(){}, | |
| beforeDestroy(){}, | |
| setEditMode(){ | |
| this.editMode = !this.editMode; | |
| }, | |
| saveNickname(){ | |
| const userId = localStorage.getItem("userId"); | |
| const token = localStorage.getItem("token"); | |
| const headers={"Authorization":"Token " + token}; | |
| axios.post( | |
| `https://newtypev3-server-vjiloyvjvq-an.a.run.app/user/profile`, | |
| { | |
| userId, | |
| nickname: this.nickname, | |
| }, | |
| { | |
| headers | |
| } | |
| ) | |
| .then(response => { | |
| this.editMode = false; | |
| }) | |
| .catch(error => { | |
| this.loading = false; | |
| alert(error.response.data.detail); | |
| }) | |
| }, | |
| }, | |
| created() { | |
| const userId = localStorage.getItem("userId"); | |
| const token = localStorage.getItem("token"); | |
| const headers={"Authorization":"Token " + token}; | |
| axios.get( | |
| `https://newtypev3-server-vjiloyvjvq-an.a.run.app/user/profile/${userId}`, | |
| { | |
| headers | |
| } | |
| ) | |
| .then(response => { | |
| const dataObject = response.data;; | |
| this.likeCount = dataObject.likecount; | |
| this.nickname = dataObject.nickname; | |
| this.userId = userId; | |
| }).catch(error => { | |
| this.loading = false; | |
| console.log(error) | |
| }) | |
| }, | |
| }; | |
| const fetchApp = Vue.createApp(userModel); | |
| if (document.querySelector("#feed-profile-tab") != null) { | |
| fetchApp.mount('#feed-profile-tab'); | |
| }else{ | |
| fetchApp.mount(document.getElementsByTagName("gradio-app")[0].shadowRoot.getElementById("feed-profile-tab")); | |
| } | |
| console.log("mount success"); | |
| },1000,9000); |