[問題] Vue如何實現複製文字(包含樣式)?

作者: hamster3933 (hamster)   2020-09-17 15:14:55
大家好,近日使用Vue,想要做一個可以將輸入值轉成特定樣式的網頁,但當我想要做複
製功能時卻遇到了問題。
上網爬文,有看到clipboard2等套件,或是原生js的document.execuCommand,但由於我
希望是連同樣式一起複製(我的輸出會包含斜體、粗體等),加上我的字串資料包含html
tag,再用v-html解析。
示意如下:
資料長相:
data:[‘<b>test</b>’, ‘<i>test</i>’]
Vue呈現:
<div v-for=‘item in data’ v-html=item></div>
問題一:
Vue有套件可以做出連同樣式一起複製的功能嗎?
問題二:
承上題,若有,那我要如何從div取出v-html解析過的值?
感謝
作者: BugofBook (數學書蟲)   2020-09-17 19:05:00
因為有注入攻擊的風險,不太建議你做這個功能。問題二的話,我想可以使用ref把值取出來。
作者: hamster3933 (hamster)   2020-09-17 20:52:00
謝謝,我後來先做了只取得文字的功能~
作者: froce (froce)   2020-09-25 08:02:00
把el取出後只取你要的屬性像tag、style轉成json,然後變成vnode去做

Links booklink

Contact Us: admin [ a t ] ucptt.com