javascript - index.html 在重新定位到子文件夹“模板”后不会访问 app.js 或 data.js
问题描述
我有一个正常工作的静态网页,其中 index.html 成功地从 中读取样式css/style.css
、从中读取数据和从 中读取js/data.js
逻辑js/app.js
。以下是 index.html 中的确切代码:
对于风格:
link href="static/css/style.css
对于数据:
script src="static/js/data.js
对于逻辑:
script src="static/js/app.js
问题是,当我运行一个 Flask python 应用程序来简单地index.html
加载index.html
. 当我这样做时,会加载网页,甚至加载样式,即使我没有更改css/style.css
. 但是,index.html
不会访问 data.js 和 app.js。我知道我必须在上面共享的代码中修改路由的语法,但我无法确定路由是什么。我试过开始,'frontend3/...'
但没有奏效。
frontend2文件/文件夹结构,其中index.html
提取data.js
和app.js
. 没有 app.py 烧瓶应用程序。index.html 读取 data.js 和 app.js。
frontend3文件/文件夹结构,其中 index.html 不获取 data.js 和 app.js。有一个烧瓶应用程序(app.py),约定要求我将 index.html 放在“模板”文件夹中。
我知道我错过了一些简单的东西。请帮忙。谢谢你。
解决方案
这些链接是相对的,必须是绝对的。简单的方法是在路径前加上'/'。例如,
href="/static/css/style.css"
Flask 方式是url_for
在你的模板中使用
href="{{ url_for('static', filename='css/style.css') }}"
要么会工作。
推荐阅读
- c# - 水平列表框多行(WPF)
- reactjs - 水平平面列表项相对于屏幕的位置
- python - 在用户定义的环境中更新了 spyder 4.0.1(比如 abc)但是当我在激活 abc 后打开 spyder 时,仍然只打开 spyder 3.3.6
- javascript - Onmouseover 为不同的图像映射播放不同的音频文件
- python - 芹菜有时不会在 docker 中运行
- swift - AVCaptureMovieFileOutput 从不调用屏幕录制的委托
- python - 两个列表之间的向量化距离计算
- javascript - 如何将显示更改为响应式而不是重新加载页面?
- javascript - 使用 jquery 或 javascript 在我的 jsp 中提供自动保存功能
- ios - SceneKit 和 ARKit – 柔和阴影或模糊阴影