私は ReactJS を使用しており、ユーザーがリンクをクリックしたときにテキストをクリップボードにコピーしたいと考えています。
私は Chrome 52 を使用しており、他のブラウザをサポートする必要はありません。
このコードでデータがクリップボードにコピーされない理由がわかりません。(コード スニペットの出典は Reddit の投稿です)。
これは間違っていますか? reactjs を使用してクリップボードへのコピーを実装する「正しい」方法があるかどうか誰か提案できますか?
copyToClipboard = (text) => {
console.log('text', text)
var textField = document.createElement('textarea')
textField.innerText = text
document.body.appendChild(textField)
textField.select()
document.execCommand('copy')
textField.remove()
}
ベストアンサー1
プログラムによってデータをクリップボードに書き込む場合は、ボタン上でこのシンプルなインライン onClick 関数を使用します。
onClick={() => {navigator.clipboard.writeText(this.state.textToCopy)}}