Angular CDK clipboard API 参考文档
import {ClipboardModule} from '@angular/cdk/clipboard';
服务
Clipboard
把文本复制到剪贴板的服务。
A service for copying text to the clipboard.
方法
beginCopy | |
---|---|
准备稍后要复制的字符串。这对于大型字符串很有用,在同一个检测周期内它们需要很长的时间才能成功渲染并复制。 Prepares a string to be copied later. This is useful for large strings which take too long to successfully render and be copied in the same tick. 调用者必须调用 The caller must call 要复制的字符串。 @param text The string to copy. 挂起的复制操作。 @returns the pending copy operation. |
|
参数 Parameters |
|
text string
|
|
返回值 Returns |
|
PendingCopy
|
挂起的复制操作。 the pending copy operation. |
copy | |
---|---|
把提供的文本复制到用户的剪贴板中。 Copies the provided text into the user's clipboard. 要复制的字符串。 @param text The string to copy. 操作是否成功。 @returns Whether the operation was successful. |
|
参数 Parameters |
|
text string
|
|
返回值 Returns |
|
boolean
|
操作是否成功。 Whether the operation was successful. |
指令
CdkCopyToClipboard
为某个按钮提供行为,此按钮在被点击时会把内容复制到用户的剪贴板中。
Provides behavior for a button that when clicked copies content into user's clipboard.
属性
名称 | 描述 |
---|---|
@Input('cdkCopyToClipboardAttempts')
|
尝试复制文本的次数是多少次。这对于文本较长的文本来说可能是必需的,因为浏览器需要时间来填充中转 textarea 元素并复制其内容。 How many times to attempt to copy the text. This may be necessary for longer text, because the browser needs time to fill an intermediate textarea element and copy the content. |
@Input('cdkCopyToClipboard')
|
要复制的内容。 Content to be copied. |
@Output('cdkCopyToClipboardCopied')
|
某些文本被复制到剪贴板后发出通知。发出的值表示复制是否成功。 Emits when some text is copied to the clipboard. The emitted value indicates whether copying was successful. |
方法
copy | |
---|---|
把当前文本复制到剪贴板。 Copies the current text to the clipboard. |
|
参数 Parameters |
|
attempts number = this.attempts
|
|
类
PendingCopy
一个挂起的复制到剪贴板操作。
A pending copy-to-clipboard operation.
把文本复制到剪贴板的实现会修改 DOM 并强制重新布局。如果字符串很大,这次重新布局可能需要很长时间,这会导致 execCommand('copy') 在用户点击后很久才会发生。这会导致浏览器拒绝复制。该对象可以通过提供一个稍后调用的复制函数,来允许在一个独立的周期中内进行重新布局。
The implementation of copying text to the clipboard modifies the DOM and forces a relayout. This relayout can take too long if the string is large, causing the execCommand('copy') to happen too long after the user clicked. This results in the browser refusing to copy. This object lets the relayout happen in a separate tick from copying by providing a copy function that can be called later.
无论是否调用 copy
,都必须在不再使用时调用其 Destroy。
Destroy must be called when no longer in use, regardless of whether copy
is
called.
方法
copy | |
---|---|
完成复制文本的操作。 Finishes copying the text. |
|
返回值 Returns |
|
boolean
|
|
destroy | |
---|---|
清理用于执行复制操作的 DOM 更改。 Cleans up DOM changes used to perform the copy operation. |
接口
CdkCopyToClipboardConfig
可用于配置 CdkCopyToClipboard
默认选项的对象。
Object that can be used to configure the default options for CdkCopyToClipboard
.
属性
名称 | 描述 |
---|---|
|
复制文本到剪贴板时的默认尝试次数。 Default number of attempts to make when copying text to the clipboard. |
常量
CDK_COPY_TO_CLIPBOARD_CONFIG
这个注入令牌可以用来为 CdkCopyToClipboard
提供默认选项。
Injection token that can be used to provide the default options to CdkCopyToClipboard
.
const CDK_COPY_TO_CLIPBOARD_CONFIG: InjectionToken<CdkCopyToClipboardConfig>;
CKD_COPY_TO_CLIPBOARD_CONFIG
const CKD_COPY_TO_CLIPBOARD_CONFIG: InjectionToken<CdkCopyToClipboardConfig>;