【发布时间】:2019-08-02 05:57:54
【问题描述】:
在 Accomazzo 的 React Fullstack 一书中,在第一章中他们使用了 seed.js 作为数据源。它有 IIFE,他们使用窗口对象在项目的任何地方使用它。但是当我创建自己的反应项目并遵循代码时,它显示一个错误,说 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 };
}());
【问题讨论】:
-
你试过
const player = window.Seed.players[0]吗?您还需要确保 seed.js 是您包含在 bundle/html 中的第一个 JS 文件。 -
您是否检查过浏览器中的 Seed 是否可用?你确定 seed.js 正在加载吗?
-
window.Seed.players[0]为我工作,谢谢@Clarity。另外,我如何检查浏览器中的 Seed 是否可用,@F.bernal?