小編給大家分享一下webpack不識別react的解決方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
鄧州網站制作公司哪家好,找創(chuàng)新互聯(lián)!從網頁設計、網站建設、微信開發(fā)、APP開發(fā)、響應式網站建設等網站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)自2013年起到現(xiàn)在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創(chuàng)新互聯(lián)。
webpack不識別react是因為使用了es6的import關鍵字聲明的變量,并且沒有將變量掛載到window上導致的,其解決辦法就是使用es5的聲明變量方式“var React = require("react");”即可。
webpack打包后不識別react怎么辦?
問題:
webpack能夠正常打包react項目,但是在chrome調試器中報錯如下
Uncaught ReferenceError: React is not defined
原因:
使用了es6的import關鍵字聲明的變量,沒有將變量掛載到window上。
es5中只有var和function會聲明變量而且默認是全局對象的屬性,只有全局作用域和函數(shù)作用域。也就是nodejs中global的屬性,瀏覽器中window的屬性,這就帶來了一些問題,全局污染,當一個程序里有好多同名變量的時候后面的覆蓋前面的。
為了解決這種問題或者其他原因,es6引入了const,import,class,let等關鍵字,它們是塊作用域,這些關鍵字聲明出來的不會做全局變量的屬性,也就是說不會做global或者window的屬性。
解決方法:
使用es5的聲明變量方式
var React = require("react");
看完了這篇文章,相信你對webpack不識別react的解決方法有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!