Bladeren bron

Merge branch 'edit-bugs-4.13' into test

zhangwei 3 jaren geleden
bovenliggende
commit
ce3bdf23c2
3 gewijzigde bestanden met toevoegingen van 46 en 27 verwijderingen
  1. 29 16
      src/logic/twitter.js
  2. 2 2
      src/uilts/chromeExtension.js
  3. 15 9
      src/view/red-packet.vue

+ 29 - 16
src/logic/twitter.js

@@ -452,45 +452,58 @@ function checkHasDeBtn() {
 function parseDOMRedPacket() {
     let _dom = null
     let arr = document.querySelectorAll('a') || []
-
+    let _type = ''
     for (let i in arr) {
         if (arr[i].innerText == '#DeNet') {
             let _article = arr[i].closest('article')
-            let _postId = _article.querySelector('[lang]').innerText
+            let _txt_area = _article.querySelector('[lang]')
+            let _postId = _txt_area.innerText
             _postId = _postId.match(/###([\s\S]*?)###/)[1]
             _dom = _article.querySelector('[aria-labelledby]')
+            if (_dom) {
+                _type = 'card'
+            } else {
+                _type = 'parnet'
+                _dom = _txt_area.parentNode.parentNode
+            }
             let _tweetId = _article.querySelector('a[aria-label]').getAttribute('href').split('/status/')[1]
-
             if(bindTwitterArt.needBind) {
                 bindTwitterArtMethod({postId: _postId, twitterId: _tweetId});
             }
-            replaceDOMRedPacket(_dom, _postId, _tweetId)
+            replaceDOMRedPacket(_type, _dom, _postId, _tweetId)
         }
     }
 }
 
-function replaceDOMRedPacket(_dom, postId, tweetId) {
-    if (!_dom || _dom.querySelector('iframe')) {
-        return
-    }
-    let _len = _dom.childNodes.length
-    for (let i = 0; i < _len; i++) {
-        _dom.children[i].style.display = 'none'
-    }
-
+function createIframe(postId,tweetId) {
     let _iframe = document.createElement('iframe')
     _iframe.id = postId
     _iframe.src = chrome.runtime.getURL('/iframe/red-packet.html') + `?postId=${postId}&tweetId=${tweetId}`;
     _iframe.style.cssText = 'border: medium none; width:375px;height:500px;'
-    _dom.style = 'height:500px'
-    _dom.appendChild(_iframe)
+    return _iframe
+}
+function replaceDOMRedPacket(_type, _dom, postId, tweetId) {
+    if (!_dom || _dom.querySelector('iframe')) {
+        return
+    }
+    let _len
+    if (_type == 'card') {
+        _len = _dom.childNodes.length
+        for (let i = 0; i < _len; i++) {
+            _dom.children[i].style.display = 'none'
+        }
+        _dom.style = 'height:500px'
+        _dom.appendChild(createIframe(postId,tweetId))
+    } else {
+        _dom.insertBefore(createIframe(postId,tweetId), _dom.children[1])
+    }
 }
 
 
 export function setIframeRedPacket() {
     // let elment = document.documentElement
 
-    if(window.location.href.includes('https://twitter.com)')){
+    if (window.location.href.includes('https://twitter.com)')) {
         return
     }
     // const observer = new MutationObserver(callback);

+ 2 - 2
src/uilts/chromeExtension.js

@@ -1,11 +1,11 @@
 export const LANDING_PAGE = {
     name: 'received_log',
-    url: 'http://localhost:3000'
+    url: 'https://de-net-test.piaoquantv.com'
 }
 
 export const LANDING_PAGE_MIND = {
     name: 'mid',
-    url: 'http://localhost:3000'
+    url: 'https://de-net-test.piaoquantv.com'
 }
 
 export function setChromeStorage(params) {

+ 15 - 9
src/view/red-packet.vue

@@ -226,13 +226,13 @@ async function clickLickBtn() {
   if (!_userInfo) {
     return
   }
-  data.done.like = true
-  // 跳转到推文详情
+  data.loading_show = true
   oneKeyLike({
     params: {
       tweetId: data.srcContentId
     }
   }).then((res) => {
+    data.loading_show = false
     if (res.code == 0) {
       if (res.data.result) {
         data.done.like = true
@@ -282,12 +282,13 @@ async function clickRetweetBtn() {
     return
   }
 
-  data.done.retweet = true
+  data.loading_show = true
   oneKeyReTweet({
     params: {
       tweetId: data.srcContentId
     }
   }).then((res) => {
+    data.loading_show = false
     if (res.code == 0) {
       if (res.data.result) {
         data.done.retweet = true
@@ -328,7 +329,7 @@ async function clickFollowAll(item) {
   if (!_userInfo) {
     return
   }
-
+  data.loading_show = true
   let arr_name = []
   for (let i in item) {
     arr_name.push(item[i].name)
@@ -338,6 +339,7 @@ async function clickFollowAll(item) {
       names: arr_name
     }
   }).then((res) => {
+    data.loading_show = false
     if (res.code == 0) {
       res.data.forEach((item1) => {
         data.detail.taskCondition[0].relatedUsers.forEach(item2 => {
@@ -384,6 +386,7 @@ function init() {
       postId: data.postId
     }
   }).then((res) => {
+    initTaskDetail()
     switch (res.code.toString()) {
       case "0":
         data.srcContentId = res.data.srcContentId
@@ -423,9 +426,9 @@ function init() {
           data.detail.receiveAmountValue = showLastTwoPlace(data.detail.receiveAmountValue)
           if (data.detail.myReceived) {
             data.money = data.detail.myReceived.amountValue
+            getValidity()
           }
           console.log(data.detail)
-          getValidity()
         }
         // 已结束
         if (res.data.postType == 2) {
@@ -434,8 +437,9 @@ function init() {
         break
     }
   })
-
-  // 任务详情
+}
+function initTaskDetail(){
+    // 任务详情
   getTaskDetail({
     params: {
       postId: data.postId
@@ -446,7 +450,7 @@ function init() {
         switch (res.data[i].type) {
           case 1:
             data.done.follow = res.data[i].finished
-            // data.detail.taskCondition[0].relatedUsers = res.data[i].detail
+            data.detail.taskCondition[0].relatedUsers = res.data[i].detail
             break
           case 2:
             data.done.like = res.data[i].finished
@@ -551,11 +555,13 @@ async function clickGetGiveways() {
 }
 
 function handleFinishRedPacket() {
+  data.loading_show = true
   finishRedPacket({
     params: {
       postId: data.postId
     }
   }).then((res) => {
+    data.loading_show = false
     switch (res.code.toString()) {
       case '0':
         if (res.data.finished) {
@@ -963,8 +969,8 @@ body {
         }
 
         .item-content {
+          width: 100%;
           flex: 1;
-
           .item-follow-title {
             display: flex;
             align-items: center;