在Flask中将外部Chartjs图表从javascript文件调用为HTML

在Flask中将外部Chartjs图表从javascript文件调用为HTML,javascript,jquery,html,flask,chart.js,Javascript,Jquery,Html,Flask,Chart.js,我正在创建一个网页。在这个网页上,我希望它加载一个Chartjs文件。保持我的结构整洁。我想将图表对象放入一个外部“scripts.js”文件中,并在HTML中将其作为脚本调用。我正在使用Flask创建网站 当我将所有代码都包含在HTML中时,效果很好,但它似乎不允许我导入JS脚本。请帮帮我。多谢各位 尝试: “scripts.js”: HTML: 线条图() 如果代码在HTML文件中运行正常,则问题必须与资源的路径有关。您是否已通过浏览器确认正在加载script.js文件?您的html是Fl

我正在创建一个网页。在这个网页上,我希望它加载一个Chartjs文件。保持我的结构整洁。我想将图表对象放入一个外部“scripts.js”文件中,并在HTML中将其作为脚本调用。我正在使用Flask创建网站

当我将所有代码都包含在HTML中时,效果很好,但它似乎不允许我导入JS脚本。请帮帮我。多谢各位

尝试: “scripts.js”:

HTML:


线条图()

如果代码在HTML文件中运行正常,则问题必须与资源的路径有关。您是否已通过浏览器确认正在加载
script.js
文件?

您的html是Flask转换为实际html的模板代码

<script src="{{ url_for('static', filename='scripts.js') }}"></script>

生成的
src
url可能丢失或不正确,这意味着您的浏览器将无法加载和执行javascript文件。

感谢您的回复-如果我检查一下浏览器控制台,似乎可以加载它-问题现在已解决-正如Haken Lid指出的-问题是由{{}创建的。您的html是Flask转换为实际html的模板代码。输出是什么样子的?在浏览器中打开页面,并使用“查看源代码”查看最终的html。
{{}}
中的部分可能没有指向javascript文件的正确位置。另外,如果您直接输入url,您应该确认Flask web服务器正在为javascript文件提供服务。这确实是个问题,javascript中的数据没有被读入,因为{{},我在scripts.js文件中用正确的语法替换了它,一切正常。谢谢哈肯,我会接受这个答案。好的。我也将提交评论文本作为答案。
<head>
<script src="{{ url_for('static', filename='scripts.js') }}"></script>
</head>

<canvas id="lineChart" width="20" height="20"></canvas>

<script>
   linechart()
</script>
<script src="{{ url_for('static', filename='scripts.js') }}"></script>
<script src="/static/scripts.js"></script>