Svelte — список ошибок и их исправление

Admin Python Errors, Svelte Errors

Исправление частых ошибок на svelte.

TypeError: Object of type datetime is not JSON serializable

Со стороны Python не правильная передача данных. Передавать данные следует в формате json.

Примеры:

json.dumps(my_dictionary, indent=4, sort_keys=True, default=str)

или

return json.dumps(last_price(name), separators=(',', ':'))

или

return json.dumps(last_price(name))

Error: {#each} only iterates over array-like objects

Надо объявить явно, что наша переменная будет массивом:

let names = [];

Uncaught Error: {#each} only iterates over array-like objects.

или
[object Promise] svelte

Ошибка:

index.mjs:1569 Uncaught Error: {#each} only iterates over array-like objects.
at validate_each_argument (index.mjs:1569)
at Object.update [as p] (App.svelte:139)
at update (index.mjs:707)
at flush (index.mjs:676)
at init (index.mjs:1439)
at new App (App.svelte:120)
at app.js:3
at app.js:8

Решение не обязательно будет как в примере ниже. Есть много причин, которые могут быть связаны с этой ошибкой.

А

Суть в том, что с бэкенда не успевают прийти данные по которым потом следует итерация на стороне Svelte. В тот момент, когда переменная в Svelte инициализируется в ней еще нет данных.

В JS добавляем асинхронности:


GeSHi Error: GeSHi could not find the language javasript (using path /home/admin/web/ploshadka.net/public_html/wp-content/plugins/codecolorer/lib/geshi/) (code 2)

Б

Полученные данные положим в итерируемый массив данных, а не просто в переменную:

let stocks = [];
stocks = Array.from(items[1]);

Uncaught (in promise) SyntaxError: Unexpected token O in JSON at position 0
Uncaught (in promise) SyntaxError: Unexpected token O in JSON at position 0 awate

Вероятно с бэкенда приходят данные не в формате JSON. Исправляем:

return json.dumps(response)

Uncaught (in promise) TypeError: Failed to execute ‘json’ on ‘Response’: body stream is locked

Если попытаться прочитать ответ дважды, то такая ошибка может произойти. Т.е. такой код может вызвать ошибку:

console.log(response.text());
response.json()

В этом случае следует убрать console.log и всё будет работать.

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"Svelte — список ошибок и их исправление"