作者:Sanwar ranwa翻译:疯狂的技术宅
原文:https://dzone.com/articles/ho...
未经允许严禁转载
介绍
在本文中,我们将学习怎样在 ReactJS 中把文本复制到剪贴板。
依赖的知识与环境
- React 基本知识。
- Visual Studio Code IDE。
- Bootstrap 和 HTML 的基本知识。
创建一个 React 项目
首先,用以下命令创建一个 React App。
npx create-react-app platform
然后在 Visual Studio Code 中打开新创建的项目,并使用以下命令安装 Bootstrap:
npm install --save bootstrap
打开 index.js
文件并导入Bootstrap。
import 'bootstrap/dist/css/bootstrap.min.css';
以下命令安装 copy-to-clipboard
库:
npm install save copy-to-clipboard
进入到 src 文件夹,创建一个名为 CopyBoard.js
的新组件,并在此组件中添加以下代码。
import React, { Component } from 'react'
import copy from "copy-to-clipboard";
import './CopyBoard.css';
export class CopyBoard extends Component {
constructor() {
super();
this.state = {
textToCopy: "Copy to Clipboard Demo!",
};
this.handleInputChange = this.handleInputChange.bind(this);
this.Copytext = this.Copytext.bind(this);
}
handleInputChange(e) {
this.setState({
textToCopy: e.target.value,
});
}
Copytext() {
copy(this.state.textToCopy);
}
render() {
const { textToCopy, btnText } = this.state;
return (
<div className="container">
<div class="row" className="hdr">
<div class="col-sm-12 btn btn-info">
Copy to Clipboard Demo
</div>
</div>
<div className="txt">
<textarea className="form-control" placeholder="Enter Text" onChange={this.handleInputChange} />
<br />
<br />
<button className="btn btn-info" onClick={this.Copytext}>
Copy to Clipboard
</button>
</div>
</div>
);
}
}
export default CopyBoard
接下来创建一个新的CSS文件,并在该文件中添加以下CSS。
.txt
{
margin-bottom: 20px;
margin-top: 20px;
}
.hdr
{
margin-top: 20px;
}
现在,打开 App.js 文件并添加以下代码:
import React from 'react';
import logo from './logo.svg';
import './App.css';
import CopyExample from './CopyBoard';
function App() {
return (
<div className="App">
<CopyExample/>
</div>
);
}
然后我们可以运行项目并检查结果。
在文本框中输入一些文本,然后单击按钮
这时候将会复制文本。我们可以把文本粘贴到记事本中。
本文首发微信公众号:前端先锋
欢迎扫描二维码关注公众号,每天都给你推送新鲜的前端技术文章
欢迎继续阅读本专栏其它高赞文章:
- 深入理解Shadow DOM v1
- 一步步教你用 WebVR 实现虚拟现实游戏
- 13个帮你提高开发效率的现代CSS框架
- 快速上手BootstrapVue
- JavaScript引擎是如何工作的?从调用栈到Promise你需要知道的一切
- WebSocket实战:在 Node 和 React 之间进行实时通信
- 关于 Git 的 20 个面试题
- 深入解析 Node.js 的 console.log
- Node.js 究竟是什么?
- 30分钟用Node.js构建一个API服务器
- Javascript的对象拷贝
- 程序员30岁前月薪达不到30K,该何去何从
- 14个最好的 JavaScript 数据可视化库
- 8 个给前端的顶级 VS Code 扩展插件
- Node.js 多线程完全指南
- 把HTML转成PDF的4个方案及实现
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。