【发布时间】:2019-01-31 03:42:42
【问题描述】:
我正在开发我的第一个 React 项目。我需要用 JS 对某些部分进行样式设置,因为我依赖于内容。我在 JQuery 的 $(document).ready() 上从组件 componentDidMount() 调用 JS 函数,否则它将找不到要设置样式的节点。
当我进入页面或刷新样式时按计划工作,但是当我使用路由器的<Link> 或<NavLink> 时,JS 不会加载。
有没有办法让它工作?
class About extends React.Component {
constructor() {
super();
}
componentDidMount() {
$(document).ready( function () {
indentation($('.page__content__career').children(), 85);
indentation($('.page__about .page__content__text').children(), 100);
});
}
render() {
return (
<div className="page page__about">
<div className="page__content page__about__content">
<h1>about</h1>
<hr />
<div className="page__content__photo">
<img src={'../images/profile-picture-square--dark.jpg'} />
</div>
<div className="page__content__text">
<p>Hello, World</p>
</div>
<ul className="page__content__career">
{
cvList.map( (job) => {
return (
<CVElement
startTime={job.startTime}
endTime={job.endTime}
description={job.description}
place={job.place}
link={job.link}
/>
)
})
}
</ul>
</div>
</div>
);
}
}
export default About;
我也试过在进入的时候调用尊敬的函数,还是不行
<Route path="/en/about" component={About} onEnter={() => console.log('Entered About')}/>
【问题讨论】:
标签: javascript jquery reactjs react-router components