相关疑难解决方法(0)

如何在Angular 2服务中注入Document

我有一个Angular2应用程序.为了Document在测试中模拟 对象,我想将它注入服务,如:

import { Document } from '??' 

@Injectable()
export class MyService {
  constructor(document: Document) {}
}
Run Code Online (Sandbox Code Playgroud)

Titleangular 的服务使用内部getDOM()方法:

https://github.com/angular/angular/blob/master/modules/%40angular/platform-b​​rowser/src/browser/title.ts

有没有简单的方法将文档注入服务?另外,我应该如何在providers数组中引用它?

typescript angular

55
推荐指数
3
解决办法
5万
查看次数

如何在Angular 2 Typescript中复制到剪贴板?

有没有办法在Angular2 Typescript框架中复制剪贴板(多浏览器)中的文本?

我只找到使用Javascript的来源,例如

document.execCommand('copy')
Run Code Online (Sandbox Code Playgroud)

clipboard.js angular

22
推荐指数
3
解决办法
3万
查看次数

如何将 removeEventListener 用于剪贴板数据?

页面有一个按钮,可以使用代码将文本复制到剪贴板:

export class ClipboardService {
    static copyToClipboard(toCopy: string) : void {
        document.addEventListener('copy', (e : ClipboardEvent) => {
            e.clipboardData.setData('text/plain', toCopy);
            e.preventDefault();
        });
        document.execCommand('copy');
    }
} 
Run Code Online (Sandbox Code Playgroud)

但是在使用后,此代码Ctrl+C不起作用。我需要removeEventListener类似的东西:

export class ClipboardService {
    static copyToClipboard(toCopy: string) : void {
        document.addEventListener('copy', (e : ClipboardEvent) => {
            e.clipboardData.setData('text/plain', toCopy);
            e.preventDefault();
        });
        document.execCommand('copy');

        document.removeEventListener('copy', (e : ClipboardEvent) => {
            e.clipboardData.??? // I stuck in this place.
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

复制特定字段中的文本时如何返回剪贴板的标准行为?

javascript

1
推荐指数
1
解决办法
739
查看次数

标签 统计

angular ×2

clipboard.js ×1

javascript ×1

typescript ×1