【问题标题】:Can you spot the typo in the code for this React Component? [closed]你能在这个 React 组件的代码中发现错别字吗? [关闭]
【发布时间】:2020-08-31 19:59:10
【问题描述】:

我无法在我的 react 应用(netflix 克隆)中嵌入视频。

我看到的不是嵌入的视频,而是黑色的视频窗口和屏幕上的 &&。

我认为问题出在下面的代码中:

  return (
    <div className="row">
      <h2>{title}</h2>
      <div className="row__posters">
        {movies.map((movie) => (
          <img
            key={movie.id}
            onClick={() => handleClick(movie)}
            className={`row__poster ${isLargeRow && "row_posterLarge"}`}
            src={`${base_url}${
              isLargeRow ? movie.poster_path : movie.backdrop_path
            }`}
            alt={movie.name}
          />
        ))}
      </div>
      {trailerUrl} && <YouTube videoId={trailerUrl} opts={opts} />
    </div>
  );
}

我附上了错误截图:error screencap

...我尝试从 {trailerUrl} 中删除右大括号,但这产生了无法编译的消息。

想法?

感谢您查看此内容!

【问题讨论】:

  • 将大括号移到 YouTube 元素之后:{trailerUrl &amp;&amp; &lt;YouTube videoId={trailerUrl} opts={opts} /&gt;}
  • {!!trailerUrl &amp;&amp; &lt;YouTube videoId={trailerUrl} opts={opts} /&gt;}
  • 一个 IDE 将帮助您自己捕捉这些。有很多免费的选择

标签: javascript reactjs


【解决方案1】:

你的花括号放错了地方。我相信正确的语法是

{ trailerUrlb && <YouTube videoId={trailerUrl} opts={opts} />}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-18
    • 1970-01-01
    • 1970-01-01
    • 2017-04-08
    相关资源
    最近更新 更多