'Seed' 未定义 no-undef。 seed.js 有 IIFE

'Seed' is not defined no-undef. seed.js has IIFE

在 Accomazzo 的 React Fullstack 一书中,他们在第一章中使用 seed.js 作为数据源。它有 IIFE,他们使用 window 对象在项目的任何地方使用它。但是当我创建自己的 React 项目并按照代码进行操作时,它显示一个错误,说 Seed is not defined no-undef

我试过导入,包括 html 文件中的 js 文件,但这些似乎不起作用

这是 app.js 文件

import React from 'react';
class PlayerList extends React.Component {
  render() {
    const player = Seed.players[0]
    return (
      <div className='ui unstackable items'>
        <Player 
        id={player.id}
        name={player.name}
        club={player.club}
        url={player.url}
        votes={player.votes}
        submitterAvatarUrl={player.submitterAvatarUrl}
        playerImgUrl={player.playerImgUrl}
        />
      </div>
    )
  }
}

这是 seed.js 文件

window.Seed = (function () {
  function generateVoteCount() {
    return Math.floor((Math.random() * 50) + 15);
  }

  const players = [
    {
      id: 1,
      name: 'CR7',
      club: 'Juventus',
      url: '#',
      votes: generateVoteCount(),
      submitterAvatarUrl: 'images/avatars/profile-pic.jpeg',
      playerImgUrl: 'images/players/CR7.jpg',
    },
    {
      id: 2,
      name: 'LM10',
      club: 'Barcelona',
      url: '#',
      votes: generateVoteCount(),
      submitterAvatarUrl: 'images/avatars/kristy.png',
      playerImgUrl: 'images/players/LM10.jp',
    },
    {
      id: 3,
      name: 'MS10',
      club: 'Liverpool',
      url: '#',
      votes: generateVoteCount(),
      submitterAvatarUrl: 'images/avatars/veronika.jpg',
      playerImgUrl: 'images/players/MS10.jpg',
    },
  ];

  return { players: players };
}());

在这里您可以找到一个工作示例,只需导入您的种子文件即可。基本上,您只需要 import 'seed' 并为避免错误添加 window.Seed

https://codesandbox.io/s/Whosebug-import-iife-5mojf