在 React.js 中自動複製文本到剪貼板

做者:Sanwar ranwa

翻譯:瘋狂的技術宅javascript

原文:https://dzone.com/articles/ho...css

未經容許嚴禁轉載前端

介紹

在本文中,咱們將學習怎樣在 ReactJS 中把文本複製到剪貼板。java

依賴的知識與環境

  • React 基本知識。
  • Visual Studio Code IDE。
  • Bootstrap 和 HTML 的基本知識。

建立一個 React 項目

首先,用如下命令建立一個 React App。react

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

npm install save copy-to-clipboard

進入到 src 文件夾,建立一個名爲 CopyBoard.js 的新組件,並在此組件中添加如下代碼。bootstrap

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。segmentfault

.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>  
    );
}

而後咱們能夠運行項目並檢查結果。

image.png

在文本框中輸入一些文本,而後單擊按鈕

image.png

這時候將會複製文本。咱們能夠把文本粘貼到記事本中。

image.png


本文首發微信公衆號:前端先鋒

歡迎掃描二維碼關注公衆號,天天都給你推送新鮮的前端技術文章

歡迎掃描二維碼關注公衆號,天天都給你推送新鮮的前端技術文章

歡迎繼續閱讀本專欄其它高贊文章:


相關文章
相關標籤/搜索