我已經加載了js文件中的對等js,並且當我在我的瀏覽器的控制檯行上鍵入Peer時,它向我顯示該對象。 然而,當網頁加載完畢後,我得到: Chat.jsx:18未捕獲的ReferenceError:同行是沒有定義流星React Uncaught ReferenceError:Peer is not defined
export default class Chat extends React.Component{
constructor(){
super();
// Create a Peer instance
window.peer = new Peer({ // the error is on this line
key: 'thisismykey', // get a free key at http://peerjs.com/peerserver
debug: 3,
config: {'iceServers': [
{ url: 'stun:stun.l.google.com:19302' },
{ url: 'stun:stun1.l.google.com:19302' },
]}
});
}
當我輸入對到控制檯我得到:
Function Peer(id, options) {
if (!(this instanceof Peer)) return new Peer(id, options);
EventEmitter.call(this);
// Deal with overloading
if (id && id.constructor == Object) {
optio… // etc
我曾嘗試使用componentOnMount但也提供了相同的問題。
這是由於我在考慮加載.js文件。但我將它加載到索引文件中,與所有其他正在工作的.js文件相同。
<script src="assets/js/peer.js"></script>.
我知道有一種不同的方式來加載文件,但其他的工作,所以我想知道爲什麼不這樣做。
有沒有辦法在組件準備就緒時運行代碼。
當我只是添加一個按鈕來調用/ /創建一個Peer實例代碼,它工作正常,整個事情的作品。所以js確實會被加載,只是在我思考的錯誤時間。
謝謝!
你的意思是componentDidMount? – SlartyBartfast