【问题标题】:react-fabricjs TypeError: Cannot read property 'bool' of undefinedreact-fabricjs TypeError:无法读取未定义的属性'bool'
【发布时间】:2020-05-01 13:23:33
【问题描述】:

我正在尝试评估 react-fabricjs 包,但它似乎不适用于当前的 React 16.12.0 版本。我得到的错误是: TypeError: Cannot read property 'bool' of undefined in /./src/StaticCanvas.jsx?:414:40 后跟一堆其他错误。关于如何使用 Fabricjs 或建议另一个库的任何想法?

为了复制这个问题,我只需通过 npx create-react-app demo 创建空白 React 应用程序并添加包 yarn add react-fabricjs --save

import logo from './logo.svg';
import './App.css';
import { Canvas, Text } from 'react-fabricjs';


function App() {
  return (
    <div className="App">
      <header className="App-header">
        <img src={logo} className="App-logo" alt="logo" />
        <p>
          Edit <code>src/App.js</code> and save to reload.
        </p>
              <Canvas
                  width="900"
                  height="900">
                  <Text
                      text="Hello World!"
                      left={300}
                      top={300}
                      fill="#000000"
                      fontFamily="Arial"
                  />
              </Canvas>
        <a
          className="App-link"
          href="https://reactjs.org"
          target="_blank"
          rel="noopener noreferrer"
        >
          Learn React
        </a>
      </header>
    </div>
  );
}

export default App;

【问题讨论】:

    标签: javascript reactjs fabricjs fabricjs2


    【解决方案1】:

    查看我仅使用此包创建的沙箱上的错误,我可以看到它正在尝试从 react 的对象访问 PropTypes。

    基于react docs

    自 React v15.5 以来,React.PropTypes 已移入不同的包

    所以,我的假设是这个模块是使用 React 版本构建的,它的对象下仍然有 PropTypes。

    您可能会考虑寻找一个不同的模块,因为该模块似乎已不再维护。

    【讨论】:

    • 我真的没有看到任何其他 react fabricjs 包,虽然 fabricjs 本身看起来很不错
    • 我对fabric.js不熟悉,但是你可以尝试使用their module,根据你的需要从头开始创建一些东西。我创建了a proof of concept,但我强烈建议您浏览一下网络,因为您可能会从实际使用它的人那里找到更好的方法。
    • This 对我来说似乎是一个不错的方法。也像我在我的例子中那样使用fabric.js
    • 嗯,使用这个库的最佳方式似乎不是通过 React,而是直接使用:) ...目标是创建类似 Visio 的图表
    猜你喜欢
    • 2016-04-12
    • 2023-04-01
    • 2021-09-24
    • 2020-07-10
    • 2019-07-07
    • 2021-03-10
    • 2020-02-10
    • 2021-04-17
    • 1970-01-01
    相关资源
    最近更新 更多