Перезагрузка виджетов Jupyter для быстрой разработки - PullRequest
0 голосов
/ 29 марта 2020

В настоящее время я работаю над пользовательским виджетом Jupyter. Когда я включаю необходимые javascript, используя %%javascript magi c в записную книжку, я могу просто перезагрузить эти ячейки, чтобы обновить свой виджет, если я внесу изменения, что удобно для разработки.

Есть ли способ, с помощью которого вы можете легко загрузить этот тип с помощью javascript, хранящегося вне ноутбука? Потому что сейчас мне нужно полностью перезапустить Jupyter, когда я хочу увидеть последствия изменения.

Смежный вопрос: когда я храню javascript внешне, Jupyter почему-то все еще знает, где его найти, хотя я не загружайте это явно. Где Jupyter ищет javascript для пользовательских виджетов?

1 Ответ

0 голосов
/ 29 марта 2020

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

У меня есть javascript в отдельных. js файлах. Я загружаю это в свой блокнот, имея ячейку со следующим содержимым:

from IPython.display import display, HTML
with open("javascript.js") as f:
        data = f.read()
text = """<div style="overflow:auto">Loading scripts</div>
<script type="text/javascript">
{}
</script>""".format(data)
display(HTML(text))

Выполнение этой ячейки вставляет необходимые javascript. Когда базовые файлы javascript изменились, просто перезапустите ячейку, чтобы обновить javascript. Затем, когда вы создадите новый виджет, он будет иметь обновленный код.

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