我目前正在嘗試學習使用ReactJS,但我遇到了問題,我似乎無法找到正確的解決方法。ReactJS無法識別的令牌導入
我已經安裝了npm,並在我的項目的根目錄下運行了npm --install react
和npm --install react-dom
。該項目是HTML/Javascript發佈到PHP後端,我沒有使用NodeJS,它似乎在我看到的內容中出現了很多,但從我的理解來看,Node並不是必需的。
我有以下的js文件
import * as ReactDOM from "react-dom";
import * as React from "react";
$(document).ready(function(){
postToMiddleware(null, "account-manager.php", "testReact", function(result){
alert(JSON.stringify(result));
ReactDOM.render("<Names />", document.getElementById("names"));
})
});
class Names extends React.Component {
render() {
return (
<p>Hello here is my react component</p>
);
};
}
我的HTML頁面包含的JavaScript文件之上,但隨後我在Chrome控制檯得到一個錯誤:
Uncaught SyntaxError: Unexpected token import
它抱怨線是第一行:
import * as ReactDOM from "react-dom";
如果它有什麼區別 - 我假設沒有,我在Wamp下運行的Windows上運行,不過當它運行時它將運行在運行Apache的Linux機器上。
UPDATE 因爲我已經發現了進口替代,改變了兩個導入線如下:
var ReactDOM = require("/node_modules/react-dom/"); var React = require("/node_modules/react");
但現在在Chrome中我得到:
Uncaught SyntaxError: Unexpected token <
哪個抱怨渲染返回線<p>Hello here is my react component</p>
您不能在瀏覽器中使用類似於代碼的反應代碼,而無需翻譯它。堅持使用@tomasz建議使用預定義的所有設置的樣板應用程序 – baao
未捕獲SyntaxError:意外的標記< - 您因爲需要傳輸JSX語法而出現此錯誤。 Transpiler會將它轉化爲反應物體。 – Tomasz