当前位置: 首页 > 知识库问答 >
问题:

如何在剪贴板中复制颜色,reactjs

公羊凌
2023-03-14

我在reactjs初学者,我想复制一个颜色,当我点击颜色。

应该怎么做呢?

import React from 'react';

const Green = ()=>{
        return (
            <div>
            <h1 className='g-color-title'>Green Color</h1>
             <div className='container-fluid'>
                 <div className='div-style' id='color31'> #2ECC72 </div>
                 <div className='div-style' id='color32'> #26AE60 </div>
                 <div className='div-style' id='color33'> #6AB04A </div>
                 <div className='div-style' id='color34'> #43BE31 </div>
                 <div className='div-style' id='color35'> #10A881 </div>
                 <div className='div-style' id='color36'> #019031 </div>
                 <div className='div-style' id='color37'> #75DA8B </div>
                 <div className='div-style' id='color38'> #218F76 </div>
                 <div className='div-style' id='color39'> #218F76 </div>
                 <div className='div-style' id='color40'> #7CEC9F </div>
             </div>   
        </div>
        )   
}

export default Green;

共有1个答案

农弘毅
2023-03-14

你可以使用导航器。剪贴板。writeText()将文本复制到剪贴板。

我建议使用颜色对象,然后使用Object.entries()和map()创建

const Green = () => {

    const colors = {
        color31: '#2ECC72',
        color32: '#26AE60',
        color33: '#6AB04A',
        color34: '#43BE31',
        color35: '#10A881',
        color36: '#019031',
        color37: '#75DA8B',
        color38: '#218F76',
        color39: '#218F76',
        color40: '#7CEC9F',
    };

    return (
        <div>
            <h1 className='g-color-title'>Green Color</h1>
            <div className='container-fluid'>
                {Object.entries(colors).map(([id, color]) => 
                    <div className='div-style' id={id} onClick={navigator.clipboard.writeText(color)}>{color}</div>
                )}
            </div>   
        </div>
    );

}

export default Green;

 类似资料:
  • 问题是,从vim到剪贴板的复制/粘贴停止工作。我不知道为什么。。。 在中,我也没有看到和缓冲区... 这是我的。vimrc,如果需要的话。 有什么建议吗? 谢谢

  • 问题内容: 在我的Go语言命令行应用程序中,我需要能够使用Go将某些文本片段复制到系统剪贴板。基本上类似于PyperClip,但适用于Go。 我正在寻找与平台无关的解决方案!任何帮助将是巨大的:) 问题答案: 一个项目(仅适用于Windows和Mac)似乎正在接近您想要的:。 提供复制和粘贴到剪贴板的Go。 剪贴板_linux.go类中提供Linux支持:系统命令的简单包装。 另一种方法:尝试利用

  • 我使用的是ReactJS,当用户点击链接时,我想将一些文本复制到剪贴板。 我使用的是Chrome 52,不需要支持任何其他浏览器。 我不明白为什么这段代码不会导致数据被复制到剪贴板。(代码片段的来源来自Reddit帖子)。 我做错了吗?有人能建议有没有一种“正确”的方法来使用reactjs实现复制到剪贴板?

  • 我有一个HTML格式的表,我看到有人复制/粘贴该表的部分内容。当我尝试它的时候,结果是一团糟,需要大量的清理,因为表中包含了大量带有图像和其他东西的列。 有没有办法将选择限制在表的前2列? 有没有办法替换正在复制的文本(用户选择“Apple”并按下复制,但“Banana”最终出现在剪贴板中)?

  • 问题内容: 如何将BufferedImage存储到系统剪贴板中? 问题答案: 这是从这里获得的工作代码,已成功测试

  • 将一个字符串复制到剪贴板。 仅作为用户操作的结果(即,在 click 事件侦听器中)。 创建一个新的 <textarea> 元素,用提供的数据填充它,并将其添加到 HTML 文档中。 使用 Selection.getRangeAt() 来存储选择的范围(如果有的话)。 使用 document.execCommand('copy') 复制到剪贴板。 从HTML文档中删除 <textarea> 元素。