Реакция-Ларавелин Неожиданный токен

Я пытаюсь заставить работать реактивный удар. Я установил все правильно (v8js и т. Д.), Но я продолжаю получать:

V8Js::executeString():18903: SyntaxError: Unexpected token <

Кажется, проблема в моем файле component.js:

var Application = React.createClass({
    render: function() {
        return (
            <div className="Networks">
                <ul>
                    <li>Test</li>
                </ul>
            </div>
        );
    }
});

Как я могу это исправить?


Кроме того, возможно ли использовать ES6?


Мой взгляд:

<html>

<head>
    <title>JSPM Experiment</title>
    <script src="{{ asset('vendor/react-laravel/react.js') }}"></script>
    <script src="{{ asset('js/components.js') }}"></script>
    <script src="{{ asset('vendor/react-laravel/react_ujs.js') }}"></script>
</head>

<body>

<div id='react-root'>
</div>
@react_component('Application',[ 'title' => 'Hello, World' ], [ 'prerender' => true ])
</body>

</html>

1 ответ

Это "component.js" или "components.js"? Вы, вероятно, опечатка.

Обычно вы получаете SyntaxError: Unexpected token < при попытке загрузить файл JavaScript, который не существует. Laravel отображает HTML-страницу 404 и первый < отключает ваш тег сценария.

Если у кого-то все еще есть эта ошибка, я установил Laravel 6 и настроил React:

php artisan preset react
npm install

А потом я получил аналогичную ошибку "Синтаксическая ошибка: неожиданный токен", поскольку синтаксис React JSX, похоже, не был понят. Это было исправлено изменением конфигурации babel вwebpack.mix.js:

mix.babelConfig({
  "presets": [
    "@babel/preset-react",
  ],
});

Если у вас проблемы с Laravel 6. Пожалуйста, проверьте свой файл webpack.mix.js, он должен бытьmix.react() вместо того mix.js()

https://laravel.com/docs/6.x/mix

Другие вопросы по тегам