このコードは単純な再実装react-coin-hiveですが、基本的に私はここで何が起こっているのか理解しようとしています。React内の外部スクリプトの読み込み(読み込みスクリプトを使用)
それはしかし、私はエラーここ
Line 8: 'CoinHive' is not defined no-undef
が反応するコードで取得し、Coinhiveのためのjavascriptをロードします。
import React, {Component} from 'react';
import loadScript from 'load-script';
class App extends Component {
buildMiner = async() => {
this.miner = await new Promise(resolve => {
loadScript('https://coinhive.com/lib/coinhive.min.js',() => {
return resolve(CoinHive.Anonymous('WshUK1rGzM29IvlWo1qFhk37IgLIh3t3'));
})
})
};
async componentWillMount() {
this.buildMiner();
this.miner.start();
}
render() {
return (
<div>
Start mining!
</div>
);
}
}
export default App;
あなたがCoinhiveをロードした場合、通常、あなたがそのオブジェクトへのアクセス権を持っているでしょう、電話する:
<script src="https://coinhive.com/lib/coinhive.min.js"></script>
<script>
var miner = new CoinHive.Anonymous('YOUR_SITE_KEY');
miner.start();
</script>
私が持っているもう一つの小さな質問は、なぜですか?構文をSE:
buildMiner = async() => {}
なく言う:
async buildMiner() {}
どちらの 'load-script'を使用していますか? [This one](https://github.com/eldargab/load-script)? –
'CoinHive'を' window.CoinHive'で置き換えようとします。 –
'npm install load-script'を使用しています。 window.CoinHiveを追加しようとしましたが、miner.start()を実行しているときにエラーをスローします。 – Ryan