在 React.js 中自动复制文本到剪贴板
2008 年 12 月 28 日
在本文中,我们将学习怎样在 ReactJS 中把文本复制到剪贴板。
依赖的知识与环境
-
React 基本知识。
-
Visual Studio Code IDE。
-
Bootstrap 和 HTML 的基本知识。
创建一个 React 项目
首先,用以下命令创建一个 React App。
1npx create-react-app platform
然后在 Visual Studio Code 中打开新创建的项目,并使用以下命令安装 Bootstrap:
1npm install --save bootstrap
打开 index.js
文件并导入Bootstrap。
1import 'bootstrap/dist/css/bootstrap.min.css';
以下命令安装 copy-to-clipboard
库:
1npm install save copy-to-clipboard
进入到 src 文件夹,创建一个名为 CopyBoard.js
的新组件,并在此组件中添加以下代码。
1import React, { Component } from 'react' 2import copy from "copy-to-clipboard"; 3import './CopyBoard.css'; 4export class CopyBoard extends Component { 5 constructor() { 6 super(); 7 this.state = { 8 textToCopy: "Copy to Clipboard Demo!", 9 }; 10 this.handleInputChange = this.handleInputChange.bind(this); 11 this.Copytext = this.Copytext.bind(this); 12 } 13 14 handleInputChange(e) { 15 this.setState({ 16 textToCopy: e.target.value, 17 }); 18 } 19 Copytext() { 20 copy(this.state.textToCopy); 21 } 22 23 render() { 24 const { textToCopy, btnText } = this.state; 25 return ( 262741 ); 42 } 43} 44export default CopyBoard 45283229 Copy to Clipboard Demo 303133 3440
35
36 39
接下来创建一个新的CSS文件,并在该文件中添加以下CSS。
1.txt 2{ 3 margin-bottom: 20px; 4 margin-top: 20px; 5} 6.hdr 7{ 8 margin-top: 20px; 9}
现在,打开 App.js 文件并添加以下代码:
1import React from 'react'; 2import logo from './logo.svg'; 3import './App.css'; 4import CopyExample from './CopyBoard'; 5function App() { 6 return ( 78 910 ); 11}
测试
现在我们可以运行项目并检查结果了。
在文本框中输入一些文本,然后单击按钮
这时候将会复制文本。我们可以把文本粘贴到记事本中。