我遇到一个问题,我无法在get请求后直接执行document.execCommand(' copy')(get请求包含在返回Observable的服务中)。我假设它,因为get请求是异步调用,因此该事件不再被视为可信任。
我以为我可以等待服务电话......
async getBearerToken(username: string) {
const token = await this._getTokenService.getToken('scopevar', username).first().toPromise();
this._clipboard.copy(token);
}
但这并没有奏效。
注意_clipboard服务只是创建一个textarea注入一个DOM并设置文本,然后调用document.execCommand - 它直接从一个按钮点击调用,而没有其他异步调用。我假设我需要确保该调用和之前的调用在同一个线程上。
我意识到解决方法是分两步完成,获取文本,将其设置为文本区域,然后让用户再次点击 - 我更喜欢这样做。 (这只是一个内部应用程序,用于抓取测试用户令牌以用于测试)
那么,如何在没有令人讨厌的解决方法的情况下实现这一目标?