【发布时间】:2019-01-06 05:52:06
【问题描述】:
我试图在我的 react 项目中加载一个 lottie-web 动画,但我一直收到这个错误并且无法理解它的含义
InvalidStateError:responseText 仅在 responseType 为 '' 或 '文档'。
下面是我的 React 组件:
import React, { Component } from "react";
import "./Submit.css";
import PropTypes from "prop-types";
import lottie from "lottie-web";
class Submit extends Component {
constructor(props) {
super(props);
}
componentDidMount() {
lottie.loadAnimation({
container: document.getElementById("animation"), // the dom element that will contain the animation
renderer: "svg",
loop: true,
autoplay: true,
path: "../anim/email.json" // the path to the animation json
});
}
render() {
return <div id="animation" />;
}
}
Submit.propTypes = {};
export default Submit;
有什么想法吗?
【问题讨论】:
-
我认为
path应该是lottie 可以通过网络请求获取JSON 的路径,而不是文件系统路径。尝试在根目录下服务email.json,只写path: "email.json"。 -
@Tholle 谢谢!将路径更改为
/email.json并将文件放在我的公用文件夹中就可以了。我假设它必须在公用文件夹中才能访问网络请求? -
太棒了!是的,这是对的。
public文件夹中的所有内容都将从/提供。我认为这只是引擎盖下的app.use(express.static('public'))。
标签: javascript reactjs lottie