Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在ReactJS中打印_Node.js_Reactjs_Electron - Fatal编程技术网

Node.js 在ReactJS中打印

Node.js 在ReactJS中打印,node.js,reactjs,electron,Node.js,Reactjs,Electron,如何在react中打印(打印机)我的应用程序组件中的DIV?我有一个DIV=(badgeContainer),其中添加了一些形状、文本和图像,现在我想打印DIV=(badgeContainer)中的元素。有没有一个软件包可以帮助我做这件事?非常感谢您的帮助。有几个库可供您使用。我用过,它很棒。您可以使用useRef钩子和窗口(打开、打印和关闭)来完成此操作 从“React”导入React; 导出常量可打印=()=>{ const printableAreaRef=React.useRef(nul

如何在react中打印(打印机)我的应用程序组件中的DIV?我有一个DIV=(badgeContainer),其中添加了一些形状、文本和图像,现在我想打印DIV=(badgeContainer)中的元素。有没有一个软件包可以帮助我做这件事?非常感谢您的帮助。

有几个库可供您使用。我用过,它很棒。

您可以使用useRef钩子和窗口(打开、打印和关闭)来完成此操作

从“React”导入React;
导出常量可打印=()=>{
const printableAreaRef=React.useRef(null);
常量handlePrintClick=()=>{
const w=window.open();
if(可打印区域参考当前?.innerHTML){
w?.document.write(printableAreaRef.current.innerHTML);
w?.print();
}
w?.close();
};
返回(
点击打印
我想打印这个
);
};

关于打印,您是指在屏幕上显示(DOM)还是打印到打印机或控制台?打印到打印机,我也使用electron。因此,如果你有一个使用电子的解决方案,即使你很感激。创建你自己的组件,避免使用npm包,除非你的组件是复杂的。我使用电子代码来实现这一点,为我做了诀窍。谢谢你的解决方案。
import React from "react";
export const Printable = () => {
  const printableAreaRef = React.useRef<HTMLDivElement>(null);
  const handlePrintClick = () => {
    const w = window.open();
    if (printableAreaRef.current?.innerHTML) {
      w?.document.write(printableAreaRef.current.innerHTML);
      w?.print();
    }
    w?.close();
  };
  return (
    <>
      <button onClick={handlePrintClick}>Click To Print</button>
      <div ref={printableAreaRef}>
        I want to print this
      </div>
    </>
  );
};