在我的Flask应用中。如果网页的路径为http://example.com/product/6
。我无法在此页面的html文件中导入js文件,如下所示:
<script src="js/main.js"></script>
浏览器将在http://example.com.product/js/main.js
中搜索js文件,并返回404错误。
那么,我该怎么做才能解决这个问题?
答案 0 :(得分:2)
您应该让您的静态资源使用根目录(如果您将其全部保留在那里)。
因此,如果您的目录如下所示:
.
├── app.py
└── static
├── css
├── img
└── js
└── main.js
尝试在您的JavaScript网址上添加/
,这样就不会将其附加到网页网址上。
e.g。然后<script src="js/main.js"></script>
将转到http://example.com/js/main.js
。
答案 1 :(得分:1)
您应该使用url_for
生成静态资源的网址。
<script src="{% url_for('static', filename='js/main.js' %}"></script>