如何将变量传递给Flask中的资产
我正在用Flask建立一个网站。 我还使用资产来管理我的js和css资源。 现在我想把一些变量传递给我的js脚本 下面是当flask init(\uuu init\uuuuuuu.py)启动时我注册资产的代码: 以下是我在模板文件(download.html)中使用资产的代码: 我想在js文件中使用变量“apps”,如下所示:如何将变量传递给Flask中的资产,flask,jinja2,assets,Flask,Jinja2,Assets,我正在用Flask建立一个网站。 我还使用资产来管理我的js和css资源。 现在我想把一些变量传递给我的js脚本 下面是当flask init(\uuu init\uuuuuuu.py)启动时我注册资产的代码: 以下是我在模板文件(download.html)中使用资产的代码: 我想在js文件中使用变量“apps”,如下所示: return render_template("download.html", apps=apps, versions=versions) DownLoadSelect
return render_template("download.html", apps=apps, versions=versions)
DownLoadSelector("appList", {{ apps }})
我该怎么做呢?您的资产是静态的,您无法轻松地进行更改。您可以向webassets添加一个过滤器,但这是一个奇怪的黑客行为 要想做你想做的事,你可以做:
{% assets "download_js" %}
<script>
window.apps = {{ apps }};
require(["{{ ASSET_URL}}"]);
</script>
{% endassets %}
@WadeCong如果答案对你有效,请将其标记为正确或至少放弃投票(如果你希望得到更好的答案)。
DownLoadSelector("appList", {{ apps }})
{% assets "download_js" %}
<script>
window.apps = {{ apps }};
require(["{{ ASSET_URL}}"]);
</script>
{% endassets %}
DownLoadSelector("appList", window.apps)