中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

幫一個(gè)企業(yè)做網(wǎng)站流程網(wǎng)絡(luò)整合營(yíng)銷(xiāo)是什么意思

幫一個(gè)企業(yè)做網(wǎng)站流程,網(wǎng)絡(luò)整合營(yíng)銷(xiāo)是什么意思,wordpress 用什么服務(wù)器配置,大鳳號(hào) 網(wǎng)站建設(shè)問(wèn)題背景 說(shuō)明: 前端接收到來(lái)自后端的一個(gè)長(zhǎng)字符串,要求把里面的圖片替換成為超鏈接,并且要通過(guò)請(qǐng)求一個(gè)接口進(jìn)行圖片下載。 舉例說(shuō)明 就是下列這樣的一個(gè)字符串:vaddssss[圖片](image_p0_f0.png)dsatewafdsaa[圖片](image_p1…

問(wèn)題背景

說(shuō)明:

前端接收到來(lái)自后端的一個(gè)長(zhǎng)字符串,要求把里面的圖片替換成為超鏈接,并且要通過(guò)請(qǐng)求一個(gè)接口進(jìn)行圖片下載。

舉例說(shuō)明

就是下列這樣的一個(gè)字符串:vaddssss[圖片](image_p0_f0.png)dsatewafdsaa[圖片](image_p1_f0.png)ddsagegegedsss[圖片](image_p0_f2.png)ddsdagege。需要把這個(gè)字符串中的image_p0_f0.pngimage_p0_f1.png、image_p2_f0.png替換為超鏈接,并且在點(diǎn)擊圖片名稱(chēng)時(shí),請(qǐng)求另外一個(gè)接口下載圖片

實(shí)現(xiàn)方法

這其實(shí)是一個(gè)簡(jiǎn)單的需求,但我們換了三個(gè)方案才最終實(shí)現(xiàn):

方案一

  1. 通過(guò)正則表達(dá)式,從字符串中匹配圖片格式,并將圖片替換為超鏈接
  2. 在匹配到圖片名稱(chēng),調(diào)用接口下載到圖片,并將下載地址寫(xiě)到超鏈接中

具體實(shí)現(xiàn)為:

html:

<div v-html="getImgResult(str, id)"></div>

JavaScript:

const getImgResult = async (str?:any, id?:any) => {let c_reg = /\(.*?\)/g // 匹配所有包含在括號(hào)內(nèi)的內(nèi)容let c1 = /\[圖片]\(.*?.png\)/g // 匹配這種格式:[圖片](image_p0_f0.png),[圖片] + ( + .png + )let img_arr = str.match(c1) // 匹配到所有的圖片// 遍歷匹配結(jié)果,替換for(let i in img_arr) {const img = img_arr[i].match(c_reg)[0]let img_name = img.replace(/^\(|\)$/g,'') // 替換首尾括號(hào)// 獲取圖片地址,`getImageLink`其實(shí)是一個(gè)fetchconst img_href = await getImageLink(img_name)let text_pattern = new RegExp(img_name, 'g')// 將引文中的圖片名稱(chēng)替換為超鏈接str = str.replace(text_pattern, `<a href="${img_href}" target="_blank">${img_name}</a>`)}return str
}

在這個(gè)方法中:

  • 由于獲取圖片地址必須異步,所以使用了async/await
  • v-html直接使用該async方法,得到的是一個(gè)promise的object,所以該方案放棄

方案二

基于上一個(gè)方案的問(wèn)題,我們決定不使用async/await方法,改為在圖片的超鏈接上添加@click方法,在點(diǎn)擊時(shí)請(qǐng)求獲取圖片的接口。js方法修改為下:

const getImgResult = async (str?:any, id?:any) => {let c_reg = /\(.*?\)/g // 匹配所有包含在括號(hào)內(nèi)的內(nèi)容let c1 = /\[圖片]\(.*?.png\)/g // 匹配這種格式:[圖片](image_p0_f0.png),[圖片] + ( + .png + )let img_arr = str.match(c1) // 匹配到所有的圖片// 遍歷匹配結(jié)果,替換for(let i in img_arr) {const img = img_arr[i].match(c_reg)[0]let img_name = img.replace(/^\(|\)$/g,'') // 替換首尾括號(hào)let text_pattern = new RegExp(img_name, 'g')// 修改主要在這里str = str.replace(text_pattern, `<a @click="handleImgClick(${params})">${img_name}</a>`)}return str
}

上述方法的主要修改位置為:str = str.replace(text_pattern, `<a @click="handleImageClick(${params})">${img_name}</a>`),添加了click方法。

但是,在點(diǎn)擊時(shí),執(zhí)行該方法卻報(bào)如下錯(cuò)誤:

在這里插入圖片描述
此方法也行不通。

方案三

通過(guò)父級(jí)元素命中的方法:

  1. 在html中添加@click事件
<div v-html="getImgResult(str, id)" @click="handleImgClick($event)"></div>
  1. v-html中,將圖片的唯一值設(shè)為<a>標(biāo)簽的id,其它相關(guān)參數(shù)設(shè)為html
const getImgResult = async (str?:any, id?:any) => {// do anythingfor(let i in img_arr) {/*** 修改主要在這里*/str = str.replace(text_pattern, `<a id='img-${id}' style="color: #5eadfc; text-decoration: underline; text-underline-offset: 6px;">${img_name}</a>`)}return str
}
  1. handleImgClick方法
// 點(diǎn)擊獲取圖片
const handleImgClick = async (e) => {const target_id = e.target.id// 判斷是否點(diǎn)擊圖片if(target_id.includes('img-')) { const img_name = e.target.innerHTMLlet id = target_id.replace(/^img-/g, '')let url = await getImageLink({ img_name, id })window.open(img_herf, '_blank')}
}

這樣,就實(shí)現(xiàn)了在v-html中的點(diǎn)擊事件。

http://www.risenshineclean.com/news/3937.html

相關(guān)文章:

  • 電影網(wǎng)站域名seo營(yíng)銷(xiāo)推廣
  • 沒(méi)有網(wǎng)站可以做seo排名嗎個(gè)人對(duì)網(wǎng)絡(luò)營(yíng)銷(xiāo)的看法
  • 安徽做網(wǎng)站的公司專(zhuān)門(mén)做推廣的公司
  • 創(chuàng)業(yè)網(wǎng)站怎么做如何推廣自己的微信公眾號(hào)
  • 山西網(wǎng)站建設(shè)設(shè)計(jì)百度seo
  • 做調(diào)查問(wèn)卷用的網(wǎng)站或軟件今日百度搜索風(fēng)云榜
  • 用php做網(wǎng)站難嗎南昌seo全網(wǎng)營(yíng)銷(xiāo)
  • 重慶市工程建設(shè)信息網(wǎng)新網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)圖
  • wordpress 反應(yīng)慢seo網(wǎng)站優(yōu)化推廣教程
  • 網(wǎng)站建設(shè)畢業(yè)論文5000字國(guó)內(nèi)廣告投放平臺(tái)
  • 官方查企業(yè)信息的網(wǎng)站廣州網(wǎng)站快速排名
  • 怎么把做的頁(yè)面放到網(wǎng)站上站長(zhǎng)工具seo綜合查詢(xún)權(quán)重
  • 網(wǎng)站公司建設(shè) 中山分類(lèi)達(dá)人介紹
  • 什么顏色做網(wǎng)站好看企點(diǎn)qq
  • 赤峰建設(shè)淘寶網(wǎng)站全國(guó)新增確診病例
  • 上海網(wǎng)站建設(shè)覺(jué)策動(dòng)力軟文投放平臺(tái)有哪些
  • 上海做企業(yè)網(wǎng)站什么是搜索關(guān)鍵詞
  • 大連建設(shè)工程集團(tuán)有限公司電話seo中文全稱(chēng)是什么
  • 濟(jì)南網(wǎng)站建設(shè)公司百度搜索頁(yè)
  • 小說(shuō)網(wǎng)站得廣告怎么做淘寶推廣方式
  • 品牌廠家網(wǎng)站建設(shè)貴州seo技術(shù)查詢(xún)
  • 網(wǎng)站新聞審核怎么做百度商城
  • 數(shù)據(jù)庫(kù)網(wǎng)站制作新app推廣去哪里找
  • 做中文網(wǎng)站的公司2022最近熱點(diǎn)事件及評(píng)述
  • jeecg 做網(wǎng)站系統(tǒng)優(yōu)化工具
  • 織夢(mèng)導(dǎo)航網(wǎng)站模板營(yíng)銷(xiāo)推廣策略
  • 做淘寶先在批發(fā)網(wǎng)站上拿貨有趣的軟文
  • 東莞寮步在哪里北京排名seo
  • 京東網(wǎng)站建設(shè)的意義seo信息網(wǎng)
  • 如何做介紹監(jiān)控公司的網(wǎng)站怎么做網(wǎng)站推廣