【发布时间】:2019-10-18 14:20:37
【问题描述】:
我是 ReactJS 的新手,所以我可能没有注意到这里有什么明显的东西。问题是加载时不可见。我在return() 之前尝试了alert 和console.log,它也不起作用。
代码如下,组件链接成功:
import React, {Component} from 'react';
import styled, {keyframes} from 'styled-components';
import LoaderImg from './LoaderImg.png';
import './Loader.scss';
const spinning = keyframes`
from {transform: rotate(0deg);}
to {transform: rotate(360deg);}
`;
const Spinner = styled.div`
animation: ${spinning} 2s infinite linear;
`;
class Loader extends React.Component {
constructor(props) {
super(props);
this.handleLoad = this.handleLoad.bind(this);
}
componentDidMount() {
window.addEventListener('load', this.loading);
window.requestAnimationFrame(this.loading);
}
componentWillUnmount() {
window.removeEventListener('load', this.loading);
}
loading() {
console.log("TEST");
return (
<Spinner className="Spinner">
<img src={LoaderImg} className="Spinner-Img"/>
</Spinner>
);
}
}
export default Loader;
【问题讨论】:
-
你错过了渲染方法。请从 render 方法返回所有 jsx。你把它放在 loading()
标签: javascript reactjs spinner loading