Неожиданный конец ввода JSON при передаче массива из Laravel в React - PullRequest
0 голосов
/ 21 октября 2019

Я пытаюсь передать массив из Laravel в мой компонент React, который работает нормально, если в данных нет пробелов. У меня есть следующий код:

Файл миграции:

...
$table->text('other');

Контроллер:

$listings = Listing::latest()->take(20)->get();
return view('listing.index', compact('listings '));

Просмотр (где я передаю данные в компонент React):

<div data-listings={{ $listings }} id="Listings"></div>

Компонент:

constructor(props) {
    super(props)
    this.state = {
        listings: JSON.parse(props.listings)
    }
}

Код работает нормально, пока в столбце other нет пробелов. Например, это работает, если other равно "testdata", но если оно равно "test data" с пробелом, тогда я получаю Unexpected end of JSON и вижу, что JSON заканчивается только на ... "other" : "test Кто-то знает, почему это происходит?

1 Ответ

0 голосов
/ 21 октября 2019

Скорее всего, вам придется использовать urlencode для кодирования данных, прежде чем они будут переданы в блэйд-вид. Передача Urlencode Laravel: URLEncode для HTML :: ссылка в Laravel Это преобразует пробелы в вашем файле JSON в% 20.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...