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 — список ошибок и их исправление"