首页 > 解决方案 > Reactjs 代码在 Windows 上运行良好,但在 linux 上引入错误

问题描述

下面的代码在 Windows 上运行得非常好,但是当我将它上传到在线服务器并运行通常的 npm run build 或 npm start 时,它会引入 syntaxerror 意外令牌。我不知道为什么 linux 会这样做。错误似乎指向 BrowserRouter 元素这里是截图 截屏

这是代码

import React, { Component } from 'react'
import ReactDOM from 'react-dom';
import { BrowserRouter } from 'react-router-dom'

import App from './components/App.jsx';
import axios from 'axios';

// Require Sass file so webpack can build it
import bootstrap from 'bootstrap/dist/css/bootstrap.css';
import style from './styles/style.css';

ReactDOM.render((
    <BrowserRouter>
        <App />
    </BrowserRouter>
), document.getElementById('root'));

标签: reactjs

解决方案


我按如下方式对其进行了测试,发现问题是由于缺少.bablerc文件,正如 Colburton 建议的快速故障排除我在文件中设置了以下库index.html

<script src="https://unpkg.com/react@16/umd/react.development.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js" crossorigin></script>
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>

然后我将type="text/babel"属性传递给脚本标签,如下所示:

<script type="text/babel">
ReactDOM.render((
    <BrowserRouter>
        <App />
    </BrowserRouter>
), document.getElementById('root'))

</script>

推荐阅读