У меня проблема с 'window.js_obj' в brython - PullRequest
0 голосов
/ 05 марта 2020

У меня сейчас проблема с window.js_obj У меня есть JSObject, получаемый через API и jQuery, но когда я пытаюсь преобразовать полученный JSObject в правильный Python Dict, он Похоже, в окне нет модуля с именем js_obj. Вот что я написал, чтобы преобразовать эту вещь:

userInfo_request = window.js_obj.to_dict(userInfo_request)

(userInfo_request - это моя переменная, содержащая JSObject, как указано при вводе

print(type(userInfo_request))
<class 'JSObject'>

Ошибка, которую я получаю в Консоль моего браузера:

Traceback (most recent call last):
  module __main__ line 31
    userInfo_request = window.js_obj.to_dict(userInfo_request)
AttributeError: no attribute js_obj for [object Window]

Если кто-то может мне помочь, это было бы очень круто. Заранее спасибо

Я использую Python 3 и Brython 3.8.7 (последняя версия )

Ответы [ 2 ]

1 голос
/ 07 марта 2020

Я понял проблему. Фактически, я думаю, что это было изменено в обновлении (но мы должны изменить документацию), и js_obj.to_dict был изменен на JSObject.to_dict в модуле «javascript» вместо «окна»

1 голос
/ 05 марта 2020

Вы можете использовать:

dir(window)
# Or
hasattr(window, 'js_obj')

, чтобы проверить, имеет ли объект window атрибут js_obj или нет во время выполнения.

...