reactjs - 类型“{}”.ts(2339) 上不存在属性“getTrimmedCanvas”,签名板
问题描述
我正在尝试在我的应用程序中实现一个功能,以便用户可以签署 PDF。我在 CodeSandbox 上找到了 Signature Pad 的示例,我尝试将其插入到我的项目中,但出现了 2 个错误:
Property 'getTrimmedCanvas' does not exist on type '{}'.ts(2339)
Property 'clear' does not exist on type '{}'.ts(2339)
有错误的代码部分
import Popup from "reactjs-popup";
import SignaturePad from "react-signature-canvas";
import { useState, useRef } from "react";
import React from "react";
function Button() {
const sigCanvas = useRef({});
const [imageURL, setImageURL] = useState(null);
const clear = () => sigCanvas.current.clear();
const save = () =>setImageURL(sigCanvas.current.getTrimmedCanvas().toDataURL("image/png"));
return (
//for more Code use the Link: Codesource Signature Pad example
);
}
export default Button;
我已经安装了这两个库:
npm install --save reactjs-popup
npm install --save react-signature-canvas
知道如何解决它们吗?非常感谢
解决方案
我解决了这个问题,在 useRef 中添加一个类型:
const sigCanvas = useRef<any>();
推荐阅读
- html - 具有不透明度值的悬停背景和具有不透明度不同值的悬停按钮
- jenkins - 失败的 Git 和 Github 插件及其在 Jenkins 中的依赖项安装
- php - 如何使用内部联接从两个日期之间的数据库中获取数据?
- python-3.6 - 尝试安装到 virtualenv 时出现 Pipenv 错误
- android - SecurityException:调用者不再运行,上次停止
- maven-3 - 如何解决“产品不包含强制属性'版本'。请确保您在产品文件中输入了版本”
- javascript - 无法从滚动条中选择视频的搜索时间
- javascript - 错误:捆绑失败:TypeError:无法读取 null 的属性“绑定”
- android - 在某些 Android 设备中,CalenderPickerView 显示任何日期的错误日期
- firebase - 如何在另一个屏幕上从 MIT App Inventor 2 上的 firebase 获取数据