javascript - 如何使用 Python Tornado 模板渲染 React 组件?
问题描述
我正在尝试在JupyterLab中修改登录页面 UI(使用React),它的服务器似乎由 Python Tornado组成并呈现为模板之一。(字面上存储在模板目录中。 )它也可能分别根据上下文呈现其他类似的。login.html
...jupyter_server\templates\
404.html
error.html
我只是按照https://reactjs.org/docs/add-react-to-a-website.html如下所示:
page.html
<head>
<meta charset="utf-8">
<title>{% block title %}Jupyter Server{% endblock %}</title>
:
:
<!-- We will put our React component inside this div. -->
<div id="like_button_container"></div>
<!-- Load React. -->
<!-- Note: when deploying, replace "development.js" with "production.min.js". -->
<script src="https://unpkg.com/react@17/umd/react.development.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@17/umd/react-dom.development.js" crossorigin></script>
{% block login %}
{% endblock login %}
</body>
</html>
登录.html
{% extends "page.html" %}
{% block login %}
<script src="like_button.js"></script>
<script>console.log('This is Login page.')</srcipt> // logs shows fine
<h1>This is Login Page.</h1> // tag shows fine
{% endblock login %}
据我所知,当 url 作为登录名时,login.html
将其内容附加到page.html
.
我期待like_button.js
组件渲染得很好,但它是唯一被排除在外的东西。同时日志和h1
正确可见。
我错过了什么吗?欢迎任何想法。
解决方案
src
脚本不正确。在 Tornado 中,您将静态文件放在一个名为的文件夹中static
,然后进行src
如下设置:
<script src="{{ static_url('like_button.js')"></script>
如果您将文件放在子文件夹中,例如static/js/
,则提供其相对路径:
<script src="{{ static('js/like_button.js') }}"></script>
推荐阅读
- spring-boot - 使用 Spring Boot 和 Quartz 安排电子邮件
- javascript - 这种负前瞻正则表达式模式是什么意思?
- rust - 从 python 脚本内部调用时,Cargo 无法构建
- python - 我们可以让 Selenium 专注于打开的浏览器窗口吗?
- kubernetes - ConfigMap 卷未与密钥一起安装为卷
- google-ads-api - 为什么我在 Google Ads 中尝试创建新的转化操作时收到“当前客户不允许操作”?
- .htaccess - 如何更改 .htaccess 以接受阿拉伯语?
- javascript - 来自非活动选项卡中视频元素的 CanvasRenderingContext2D drawImage
- go - 指针接收器与值的方法,值和指针之间的转换
- java - 不清楚 driver.getWindowHandles() 和 driver.getWindowHandle()