|
@@ -7,7 +7,7 @@
|
|
|
</div>
|
|
|
<div class="mess">
|
|
|
<div class="title">
|
|
|
- {{detail.groupName}}
|
|
|
+ {{ detail.groupName }}
|
|
|
</div>
|
|
|
<div class="opt">
|
|
|
<label>
|
|
@@ -29,18 +29,38 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup>
|
|
|
-import { onBeforeMount, ref } from 'vue';
|
|
|
+import { onBeforeMount,onMounted, ref } from 'vue';
|
|
|
import { getPostDetail } from '@/http/redPacket';
|
|
|
import { getQueryString } from '@/uilts/help.js'
|
|
|
+import { srcPublishSuccess } from '@/http/publishApi'
|
|
|
+import { getChromeStorage } from '@/uilts/chromeExtension.js'
|
|
|
|
|
|
let postId = getQueryString('projectId');
|
|
|
+let tweet_Id = getQueryString('tweet_Id')
|
|
|
let detail = ref(null);
|
|
|
|
|
|
const jumpUserPage = () => {
|
|
|
window.open(`https://twitter.com/${detail.value.defaultTwitterAccount}?deTabVal=deGroupTab`)
|
|
|
}
|
|
|
+// 重新绑定
|
|
|
+const reSetBindTwtterId = (_params = {}) => {
|
|
|
+ getChromeStorage('userInfo', (_userInfo = {}) => {
|
|
|
+ if (_userInfo && _userInfo.uid == _params.uid) {
|
|
|
+ srcPublishSuccess({
|
|
|
+ params: {
|
|
|
+ postId: postId,
|
|
|
+ srcContentId: tweet_Id
|
|
|
+ }
|
|
|
+ }).then((res) => {
|
|
|
+ if (res.code == 0 || res.code == 3003) {
|
|
|
|
|
|
-onBeforeMount(() => {
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+onMounted(() => {
|
|
|
getPostDetail({
|
|
|
params: {
|
|
|
postId: postId
|
|
@@ -50,27 +70,36 @@ onBeforeMount(() => {
|
|
|
if (data !== null) {
|
|
|
detail.value = JSON.parse(data.postBizData)
|
|
|
}
|
|
|
+ if (!data.srcContentId) {
|
|
|
+ reSetBindTwtterId(data)
|
|
|
+ return
|
|
|
+ }
|
|
|
})
|
|
|
})
|
|
|
</script>
|
|
|
|
|
|
<style lang='scss'>
|
|
|
-html, body {
|
|
|
+html,
|
|
|
+body {
|
|
|
margin: 0;
|
|
|
padding: 0;
|
|
|
user-select: none;
|
|
|
}
|
|
|
+
|
|
|
.card {
|
|
|
height: 180px;
|
|
|
border-radius: 12px;
|
|
|
background: url('../../../assets/svg/icon-nft-group-pc.svg') no-repeat right bottom #48B1F7;
|
|
|
+
|
|
|
.padding {
|
|
|
padding: 20px;
|
|
|
+
|
|
|
.info {
|
|
|
display: flex;
|
|
|
flex-direction: row;
|
|
|
align-items: center;
|
|
|
height: 100px;
|
|
|
+
|
|
|
.logo {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
@@ -80,28 +109,34 @@ html, body {
|
|
|
border-radius: 6px;
|
|
|
background: #FFFFFF;
|
|
|
margin-right: 20px;
|
|
|
+
|
|
|
img {
|
|
|
width: 50px;
|
|
|
height: 50px;
|
|
|
border-radius: 6px;
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.mess {
|
|
|
flex: 1;
|
|
|
+
|
|
|
.title {
|
|
|
- overflow:hidden;
|
|
|
+ overflow: hidden;
|
|
|
color: #FFFFFF;
|
|
|
font-size: 18px;
|
|
|
line-height: 21px;
|
|
|
- text-overflow:ellipsis;
|
|
|
- white-space:nowrap;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ white-space: nowrap;
|
|
|
}
|
|
|
+
|
|
|
.opt {
|
|
|
color: #FFFFFF;
|
|
|
font-size: 12px;
|
|
|
margin-top: 8px;
|
|
|
+
|
|
|
label {
|
|
|
margin-right: 18px;
|
|
|
+
|
|
|
img {
|
|
|
margin-top: -4px;
|
|
|
margin-right: 4px;
|
|
@@ -111,6 +146,7 @@ html, body {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
.join {
|
|
|
display: flex;
|
|
|
align-items: center;
|