Javascript 反应:不允许散播道具

Javascript 反应:不允许散播道具,javascript,reactjs,eslint,Javascript,Reactjs,Eslint,eslint还不够聪明吗?HOC是非常通用的,所以我不能真正指定传入的选项/道具,因为它是动态的,取决于HOC在任何给定时间包装的组件 我得到道具传播被禁止 withTracker.tsx const withTracker = (WrappedComponent: any, options: any = {}) => { options.cookieDomain = 'xxxx'; const trackPage = (page: any) => {

eslint还不够聪明吗?HOC是非常通用的,所以我不能真正指定传入的选项/道具,因为它是动态的,取决于HOC在任何给定时间包装的组件

我得到
道具传播被禁止

withTracker.tsx

const withTracker = (WrappedComponent: any, options: any = {}) => {
    options.cookieDomain = 'xxxx';
    const trackPage = (page: any) => {
        GoogleAnalytics.set({
            page,
            ...options,
        });
        GoogleAnalytics.pageview(page);
    };

    const HOC = class HOC extends Component <{ location: any }> {
        componentDidMount() {
            const page = this.props.location.pathname;
            trackPage(page);
            window.scrollTo(0, 0);
        }

        componentDidUpdate(prevProps: any) {
            const currentPage = prevProps.location.pathname;
            const nextPage = this.props.location.pathname;

            if (currentPage !== nextPage) {
                trackPage(nextPage);
            }
        }

        render() {
            return <WrappedComponent {...this.props} />;
        }
    };

    return HOC;
};

export default withTracker;
constwithtracker=(WrappedComponent:any,options:any={})=>{
options.cookieDomain='xxxx';
const trackPage=(页面:任意)=>{
GoogleAnalytics.set({
页
…选项,
});
GoogleAnalytics.pageview(第页);
};
const HOC=类HOC扩展组件{
componentDidMount(){
const page=this.props.location.pathname;
trackPage(第页);
滚动到(0,0);
}
componentDidUpdate(prevProps:any){
const currentPage=prevProps.location.pathname;
const nextPage=this.props.location.pathname;
如果(当前页!==下一页){
跟踪页面(下一页);
}
}
render(){
返回;
}
};
返回HOC;
};
使用跟踪器导出默认值;

只需禁用文件或特定行的eslint规则。

只需禁用文件或特定行的eslint规则。

大概没有理由不能传播这些道具;只是您的ESLint配置的意见是您不应该这样做。描述了该规则;这只是代码质量和风格的问题。如果您想更改代码以符合规则,或者如果您不想或不能,请在行、文件或配置级别禁用规则。

您可能没有理由不能传播这些道具;只是您的ESLint配置的意见是您不应该这样做。描述了该规则;这只是代码质量和风格的问题。如果您想更改代码以符合规则,或者如果您不想或不能,请在行、文件或配置级别禁用规则。

同意,谢谢!只是想确定一下,有时候很难判断我是否需要寻找解决方案,或者只是告诉它忽略它。同意,谢谢!只是想确定一下,有时候很难判断我是否需要寻找解决方案,或者只是告诉它忽略它。