在 OctoberCMS Javascript 文件中访问 Twig 变量

Access Twig Variable in OctoberCMS Javascript file

我正在使用基于 Laravel 框架的 OctoberCMS,我在我的 html 文件中设置了变量 {% set name = 'Juan' %} 我正在尝试通过像这样设置变量来在我的 Javascript 文件中访问它 var myName = '{{ name }}' 我提醒变量 myName 但不幸的是它不显示变量 myName 而是像这样显示整个字符串 {{ name }}

嗯 javascript 文件不支持 twig 模板引擎所以无法理解 什么是
{{ name }} 变量。

但你可以在这里做一个解决方法

在您的 .htm twig 文件中,您可以打印跨度中的变量并使其成为 display:none

<span id="name" style="display: none;">{{ name }}</span>

然后像这样将其调用到您的 js 文件中

var name = document.getElementById("name").innerHTML

或者如果你包含 jquery 那么你可以这样做

var name = $("#name").val()

希望对您有所帮助

问题是你在 javascript

中定义了整个东西

所以,模板引擎不知道你想要什么,我的建议是像这样在 Html 中定义变量

所以你以前这样做过。

{% set name = 'Juan' %}

所以现在要通过这个 variable to js 为简单起见,您可以这样做。 [它不专业,我不建议这样做,相反我们可以使用我们的 namespace/object 并传递它]

<script>var myName = '{{ name }}';</script>

make sure this line is not written in js file it must be in one of .htm layout/template or in markup section.

然后在你项目中的整个js里面就可以访问了

alert(myName);

如果它似乎与您无关,那么我们建议您使用 post laravel 可以执行此类操作的代码,以便我们提供更好的工作相关解决方案。

如果您发现任何疑问,请发表评论。