VS Code Notebook无法加载URL中的JS文件,请求解决
解决VS Code Notebook中无法加载ECharts外部JS文件的问题
你的代码在Jupyter Lab正常运行但在VS Code Notebook失效,核心原因是VS Code的Notebook环境对外部资源加载有更严格的限制,或是其内置的安全策略阻止了远程JS文件的加载。以下是几种可行的解决方法:
方法一:使用本地ECharts JS文件
- 下载对应版本的
echarts.min.js文件(如你使用的5.5.0版本) - 将该文件放在Notebook所在的目录下
- 修改代码中的script引用路径为本地文件:
from IPython.display import HTML HTML('''\n <!DOCTYPE html>\n <html lang="en" style="height: 100%">\n <head>\n <meta charset="utf-8">\n </head>\n <body style="height: 100%; margin: 0">\n\n \n <div id="test" style="height: 600px; width: 800px"></div>\n \n <script type="text/javascript" src='./echarts.min.js'></script> <script type="text/javascript"> console.log(echarts); var dom = document.getElementById('test');\n dom.innerHTML = ""\n var myChart = echarts.init(dom, null, {\n renderer: 'canvas',\n useDirtyRect: false\n });\n var app = {};\n\n var option;\n option = {"grid": {},
"yAxis": {},
"xAxis": {},
"series": [{"type": "bar", data:[[1,2],[2,3]]}] ,
"port": "5001"};
if (option && typeof option === 'object') {\n
myChart.setOption(option);\n }\n\n
\n \n \n ''')
## 方法二:使用pyecharts库(推荐) pyecharts是专为Python环境打造的ECharts封装库,完美适配Jupyter和VS Code Notebook环境,无需手动加载JS文件: - 安装pyecharts: ```bash pip install pyecharts
- 重写图表代码:
from pyecharts.charts import Bar from pyecharts import options as opts bar = ( Bar() .add_xaxis([1, 2]) .add_yaxis("", [2, 3]) .set_global_opts(title_opts=opts.TitleOpts(title="示例柱状图")) ) bar.render_notebook()
方法三:调整VS Code的安全策略(不推荐)
VS Code的Notebook有默认内容安全策略,修改设置可允许远程脚本加载,但会降低安全性:
- 打开VS Code设置,搜索
Notebook: Content Security Policy - 将默认值修改为允许加载远程脚本的策略,例如:
default-src 'self' https:; script-src 'self' 'unsafe-inline' https:; style-src 'self' 'unsafe-inline'; - 注意:此方法仅适合测试环境,可能带来安全风险。
内容的提问来源于stack exchange,提问作者Suy
相关产品推荐
相关产品推荐

