Saya mencoba untuk menerapkan ikon yang ketika diklik akan menyimpan variabel ke papan klip pengguna. Saat ini saya telah mencoba beberapa perpustakaan dan tidak satupun yang mampu melakukannya.
Bagaimana cara menyalin variabel dengan benar ke papan klip pengguna di Angular 5?
angular
typescript
angular5
anonim-dev
sumber
sumber
Jawaban:
Solusi 1: Salin teks apa pun
HTML
file .ts
Solusi 2: Salin dari TextBox
HTML
file .ts
Demo Disini
Solusi 3: Impor arahan ngx-clipboard pihak ketiga
Solusi 4: Petunjuk Kustom
Jika Anda lebih suka menggunakan arahan khusus, Periksa jawaban Dan Dohotaru yang merupakan solusi elegan yang diterapkan menggunakan
ClipboardEvent
.sumber
Cannot read property 'select' of undefined
sudut 6. Apakah ini kompatibel dengan angular6?<input *ngIf="invitation_code" type="text" readonly value="{{invitation_code}}" #userinput > <button *ngIf="code_success" (click)="copyInputMessage(userinput)" value="click to copy" > Copy code </button>
Terima kasihposition
,left
,top
, danopacity
. dan menggantinya denganselBox.style.height = '0';
Saya tahu ini sudah banyak dipilih di sini sekarang, tetapi saya lebih suka menggunakan pendekatan direktif kustom dan mengandalkan ClipboardEvent seperti yang disarankan @jockeisorby, sambil juga memastikan pendengar dihapus dengan benar (fungsi yang sama perlu disediakan untuk event listener add dan remove)
stackblitz demo
dan kemudian menggunakannya seperti itu
Catatan: perhatikan yang
window["clipboardData"]
diperlukan untuk IE karena tidak mengertie.clipboardData
sumber
Saya pikir ini adalah solusi yang jauh lebih bersih saat menyalin teks:
Dan kemudian panggil copyToClipboard pada acara klik di html. (klik) = "copyToClipboard ('texttocopy')"
sumber
Pada Angular Material v9, sekarang memiliki CDK clipboard
Papan klip | Bahan Sudut
Ini dapat digunakan sesederhana
sumber
Versi modifikasi dari jawaban jockeisorby yang memperbaiki pengendali kejadian tidak dihapus dengan benar.
sumber
document.execCommand(‘cut’/‘copy’) was denied because it was not called from inside a short running user-generated event handler
Anda dapat mencapai ini menggunakan modul Angular:
sumber
Metode di bawah ini dapat digunakan untuk menyalin pesan: -
sumber
Cara terbaik untuk melakukan ini di Angular dan menjaga kodenya tetap sederhana adalah dengan menggunakan proyek ini.
https://www.npmjs.com/package/ngx-clipboard
sumber
Salin menggunakan cdk sudut,
Module.ts
Salin string secara terprogram: MyComponent.ts,
Klik salah satu elemen untuk disalin melalui HTML:
Referensi: https://material.angular.io/cdk/clipboard/overview
sumber
Solusi yang disarankan pertama kali berhasil, kita hanya perlu mengubahnya
Untuk
yaitu,
HTML:
file .ts:
sumber