reactjs - “react-useanimations”属性“animationKey”在“IntrinsicAttribute”类型上不存在
问题描述
当我运行我的项目时,我使用了“react-useanimations”插件,显示以下错误。 “IntrinsicAttribute”类型上不存在属性“animationKey”
common.js-> 常用函数写在这里(简单的js文件)
myjob.tsx-> 此页面上使用的实际 getTag 函数(打字稿页面)
// Common.js 文件
import React from "react"; import UseAnimations from "react-useanimations"; export function getTag(tag: any) { if (tag === 'DL') return ( <UseAnimations animationKey="github" size={56} style={{ padding: 100 }} /> ); }
// myjob.tsx
import React, { useState, useEffect } from "react";
import SVG from "react-inlinesvg";
import { Link } from "react-router-dom";
import { Alert, Nav, Tab } from "react-bootstrap";
import { toAbsoluteUrl } from "../../_metronic/_helpers";
import { utcToDate, getTag } from "../../utils/common";
import Icon from '@material-ui/core/Icon';
import { MDBDataTableV5 } from 'mdbreact';
import { Dropdown, Button } from "react-bootstrap";
import { DropdownCustomToggler } from "../../_metronic/_partials/dropdowns";
import Paper from '@material-ui/core/Paper';
import Draggable from 'react-draggable';
import { getUserJobList, deleteJobById } from "../../app/modules/Job/_redux/jobCrud";
import { shallowEqual, useSelector } from "react-redux";
export function MyJobs(props: any) {
const [open, setOpen] = React.useState(false);
const [openSnackbar, setOpenSnackbar] = React.useState(false);
const [deleteJobId, setDeleteJobId] = useState("");
const [key, setKey] = useState("Month");
const [msg, setMsg] = useState("")
const [type, setType] = useState<"success" | "primary" | "secondary" | "danger" | "warning" | "info" | "dark" | "light" | undefined>("success")
const [jpbList, setJpbList] = useState([])
const [displayBy, setDisplayBy] = useState(false)
const [folders, setFolders] = useState()
const user = useSelector((state: any) => state.auth.user, shallowEqual);
const [datatable, setDatatable] = useState({
columns: [
{
label: '#',
field: 'icon',
width: 150,
attributes: {
'aria-controls': 'DataTable',
'aria-label': 'Name',
},
},
{
label: 'Job Name',
field: 'name',
width: 150,
attributes: {
'aria-controls': 'DataTable',
'aria-label': 'Name',
},
},
{
label: 'Proccesed Date',
field: 'createdDttm',
width: 270,
},
{
label: 'Status',
field: 'status',
width: 270,
},
{
label: 'Action',
field: 'action',
width: 270,
},
],
rows: [{}],
});
useEffect(() => {
if (!jpbList.length) {
getList();
}
}, []);
const getList = async () => {
getUserJobList(user.id)
.then((res: any) => {
if (res.status == 200 && res.data) {
let rows: any = [];
res.data.map((row: any) => {
rows.push(
{
icon:<img src={row.thumbnail} style={{ maxWidth: '50px', maxHeight: '50px' }} />,
name: row.name,
createdDttm: utcToDate(row.createdDttm),
status: getTag(row.status),
action: <div style={{ width: '120px' }}>
{/* begin::Toolbar */}
<div className="d-flex justify-content-end">
{
row.status == "CO" ?
<Link to={`myjobs/markerpage/${row.id}`} className="btn btn-icon btn-sm mx-3">
<span className="svg-icon svg-icon-md svg-icon-primary">
<Icon className='fa fa-play' color="action" />
</span>
</Link> : ""
}
< Dropdown className="dropdown dropdown-inline" alignRight>
<Dropdown.Toggle
id="dropdown-toggle-top-user-profile"
as={DropdownCustomToggler}
>
<i className="ki ki-bold-more-hor"></i>
</Dropdown.Toggle>
<Dropdown.Menu className="dropdown-menu dropdown-menu-sm dropdown-menu-right">
</Dropdown.Menu>
</Dropdown>
</div>
{/* end::Toolbar */}</div >,
}
)
});
let dt: any = [];
dt.columns = datatable.columns;
dt.rows = rows;
setDatatable(dt);
setJpbList(res.data);
} else {
setMsg("Something went wrong please try again later.")
setType("danger")
}
})
.catch((e: any) => {
setMsg("Something went wrong please try again later.")
setType("danger")
});
}
return (
<>
<MDBDataTableV5 hover entriesOptions={[10, 20, 50]} entries={10} pagesAmount={4} data={datatable} searchTop searchBottom={false} />
</>);
}
解决方案
您想要的第一个导入图标。
import UseAnimations from "react-useanimations";
import activity from 'react-useanimations/lib/activity'
像这样在视图或渲染中使用
<UseAnimations animation={activity} autoplay={true} loop={true} size={20} style={{ paddingLeft: 10 }} />
推荐阅读
- c# - IQueryable 上的 EF Core “InvalidOperationException:InvalidOperationException:Include 已用于非实体可查询”
- django - 为什么我的芹菜任务没有定期执行?
- c++ - 为什么每个类都有隐私但 const 不适用于同一类的对象?
- sql - 使用 PostgreSQL 批量更新同一查询中的多行
- reactjs - 在veracode中扫描package-lock.json是否理想?
- javascript - 打字时Java脚本重量变化
- python-3.x - 我试试这个,不知道如何打开第一个视频。此代码在浏览器中打开搜索
- java - 带有用于从 JSON 转换为类的聚合对象的 Jackon API
- javascript - Jquery 选择器没有正确定位
- sql - 与一个 ID 关联多个 ID 的关联“朋友”ID 进行比较时,如何列出得分最低的 ID?