【问题标题】:Type '{ domain: string; parent: string; }' is not assignable to type 'string'.ts(2322)键入'{域:字符串;父:字符串; }' 不可分配给类型 'string'.ts(2322)
【发布时间】:2021-01-03 15:24:27
【问题描述】:

我是 TS 新手,感谢您的阅读。 问题行是:<this.RenderPostLink domain={r.domain} parent={r.parent} /> 我得到这个错误的地方。

    RenderImages = (): React.ReactElement => (
        <div className="results_wrapper">
            {this.state.results.map(r=>(
                <RenderPanel panelType={PanelType.large} title={r.domain+'.TheCommonVein.net'} preview={(openIt)=>(
                    
                    <div className="result" onClick={openIt} style={{ boxShadow: theme.effects.elevation8}}>
                        <img src={r.url} />
                    </div>
                )}>
                    <div className="panel_wrapper">
                        <div className="panel_content">{r.content}</div>
                        <img src={r.url} />
                        {console.log('wtf'+r.parent)}
                        <this.RenderPostLink domain={r.domain} parent={r.parent} />
                    </div>
                </RenderPanel>
            ))}
        </div>
    )

    RenderPostLink = (domain:string, parent:string) => {
        console.log(parent+domain)
        let url:string
        if(domain=='main'){
            url= 'http://thecommonvein.net/?page='+parent;
        } else {
            url = 'http://'+domain+'.thecommonven.net/?page='+parent;
        }
        return (
            <div>
                {url}
            </div>
        )
    }

【问题讨论】:

  • 请在打字稿游乐场发布最小可复制示例
  • 请确保构造一个minimal reproducible example。请注意,所有这三个词都很重要:它应该只是一个示例,您不应该发布整个实际代码,而应该创建一个简化的示例来演示您的问题。此外,它应该是minimal,即它不应该包含证明问题所必需的任何内容。 (大多数初学者问题可以用不到 5 行简单的代码来演示。)它应该是reproducible,这意味着如果我复制并粘贴并运行代码,我应该会看到与你完全相同的问题见。

标签: reactjs typescript


【解决方案1】:

RenderPostLink 函数错误。 您将其定义为函数,但用作组件。第一个参数是带有道具的对象。 正确的方法是:

RenderPostLink = ({domain, parent} :{ domain:string, parent:string)) => ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    • 2021-04-06
    • 2023-02-26
    • 1970-01-01
    • 2019-03-28
    • 2019-09-06
    • 2021-08-19
    相关资源
    最近更新 更多