Giải pháp 1: Sao chép bất kỳ văn bản nào
HTML
<button (click)="copyMessage('This goes to Clipboard')" value="click to copy" >Copy this</button>
tệp .ts
copyMessage(val: string){
const selBox = document.createElement('textarea');
selBox.style.position = 'fixed';
selBox.style.left = '0';
selBox.style.top = '0';
selBox.style.opacity = '0';
selBox.value = val;
document.body.appendChild(selBox);
selBox.focus();
selBox.select();
document.execCommand('copy');
document.body.removeChild(selBox);
}
Giải pháp 2: Sao chép từ TextBox
HTML
<input type="text" value="User input Text to copy" #userinput>
<button (click)="copyInputMessage(userinput)" value="click to copy" >Copy from Textbox</button>
tệp .ts
/* To copy Text from Textbox */
copyInputMessage(inputElement){
inputElement.select();
document.execCommand('copy');
inputElement.setSelectionRange(0, 0);
}
Demo tại đây
Giải pháp 3: Nhập ngx-clipboard chỉ thị của bên thứ 3
<button class="btn btn-default" type="button" ngxClipboard [cbContent]="Text to be copied">copy</button>
Giải pháp 4: Chỉ thị tùy chỉnh
Nếu bạn thích sử dụng chỉ thị tùy chỉnh, hãy xem câu trả lời của Dan Dohotaru, đây là một giải pháp thanh lịch được triển khai bằng cách sử dụng ClipboardEvent
.