Logo


How to use React-canvas-screen


In this article,we are going to use React-canvas-screen ,This codes helps the users to draw anything on board
The index.js is displayed below

1import React from "react";
2import ReactDOM from "react-dom";
3import CanvasDraw from "react-canvas-draw";
4
5import { useIsMobileOrTablet } from "./utils/isMobileOrTablet";
6import "./styles.css";
7
8function App() {
9  const isMobOrTab = useIsMobileOrTablet();
10
11  return (
12    <div className="App">
13      <h1>React-Canvas-Draw</h1>
14      <h3>A simple yet powerful canvas-drawing component for React</h3>
15      <iframe
16        title="GitHub link"
17        src="https://ghbtns.com/github-btn.html?user=embiem&repo=react-canvas-draw&type=star&count=true"
18        frameborder="0"
19        scrolling="0"
20        width="160px"
21        height="30px"
22      />
23      <p>
24        <span role="img" aria-label="fingers pointing down">
25          👇👇👇👇
26        </span>{" "}
27        Use your {isMobOrTab ? "finger" : "mouse"} to draw{" "}
28        <span role="img" aria-label="fingers pointing down">
29          👇👇👇👇
30        </span>
31      </p>
32      <CanvasDraw
33        style={{
34          boxShadow:
35            "0 13px 27px -5px rgba(50, 50, 93, 0.25),    0 8px 16px -8px rgba(0, 0, 0, 0.3)"
36        }}
37      />
38      <p>
39        Like what you see? Play around in{" "}
40        <a href="https://codesandbox.io/s/6lv410914w">this CodeSandbox</a> & see
41        some more{" "}
42        <a href="https://embiem.github.io/react-canvas-draw/">Advanced Demos</a>
43        !
44      </p>
45    </div>
46  );
47}
48
49const rootElement = document.getElementById("root");
50ReactDOM.render(<App />, rootElement);

Chatscreen.js file is displayed below:

1import { useEffect, useState } from "react";
2
3function isMobileOrTablet() {
4  var check = false;
5  (function (a) {
6    if (
7      /(android|bbd+|meego).+mobile|avantgo|bada/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|series(4|6)0|symbian|treo|up.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(
8        a
9      ) ||
10      /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(
11        a.substr(0, 4)
12      )
13    )
14      check = true;
15  })(navigator.userAgent || navigator.vendor || window.opera);
16  return check;
17}
18
19export function useIsMobileOrTablet() {
20  const [isMobOrTab, setIsMobOrTab] = useState(false);
21  useEffect(() => {
22    setIsMobOrTab(isMobileOrTablet());
23  });
24  return isMobOrTab;
25}
26
27export default isMobileOrTablet;

Here is the link of live example which we done so far:
Click here

About

Moiz is a software engineer from Arid University with a passion for writing tech tutorials and doing coding. I am continously produce JavaScript and other web development technology tutorials in concepts through easy-to-understand explanations written in plain English.I have expertise in next js ,react js ,javascript,html,bootstrap and node js.

Follow him on Twitter

Hassan is a software engineer from kohat university of science and technology with a passion for writing tech tutorials and doing javascript practices on daily basis.I have expertise in next js ,react js ,javascript,html,bootstrap and node js. Problem Solving and making concpets is my strong point.

Follow him on Twitter

Tags

Click to see all tutorials tagged with:

© Copyright 2023 Pak Annonymous | Back To Homepage | Privacy Policy
Share