關於react用script標籤引入jsx文件的問題

react在處理需要動態加載的dom元素時很好用,在工作中用到了一些,其中引入的時候出現了一些小問題,就是如圖,當我想用script標籤引入jsx文件的時候,


出現了下面這個問題:

JSXTransformer.js:191 XMLHttpRequest cannot load file:///F:/apache-tomcat-7.0.78/webapps/gaofen/jsx/map-index.jsx. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.


後來查了一下,是因爲chrome不允許你使用XHR(XMLHttpRequest)加載file:// 開頭的url文件,而jsx就是用xhr來加載文件的


解決問題的辦法有3個:
1,換個瀏覽器。比如firefox,好像可以呢,但我沒試。
2,直接把代碼寫在script標籤裏,就像第一張圖裏被註釋掉的那段代碼。不過隨着代碼量增多這樣做並不明智。
3,放在web容器裏,最好的解決方案。比如tomcat就可以。別直接點開html文件了,而是放進去之後用http://localhost:8080/gaofen/index.html這樣的鏈接訪問,問題就解決了。
弄前端頁面的時候總覺得根本用不着web容器,其實有些情況下還是要用的哦。
參考解決方案來自stackoverflow:https://stackoverflow.com/a/20912211

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章