我正在使用基于Laravel Framework的OctoberCMS,并且在html文件中设置了变量
{% set name = 'Juan' %}
我试图通过设置这样的变量在我的Javascript文件中访问它
var myName = '{{ name }}'
而且我提醒了变量myName
,但不幸的是它没有显示变量myName
,而是显示了整个字符串,像这样{{name}}
答案 0 :(得分:0)
好的javascript文件不支持twig模板引擎,因此无法理解
什么是
{{name}} 变量。
但是您可以在此处进行解决
在.htm树枝文件中,您可以跨度打印变量并将其显示为:无
<span id="name" style="display: none;">{{ name }}</span>
然后像这样将其调用到您的js文件中
var name = document.getElementById("name").innerHTML
或者如果您包含jquery,则可以这样做
var name = $("#name").val()
我希望有帮助
答案 1 :(得分:0)
问题是您正在javascript
中定义整个内容
因此,模板引擎不知道您想要什么,我建议只是像这样在HTML中定义变量
所以以前您是这样做的。
{% set name = 'Juan' %}
因此,为了通过此variable to js
,您可以为简化起见执行以下操作。 [它不专业,我不建议您使用命名空间/对象并传递它]
<script>var myName = '{{ name }}';</script>
确保此行未写在
js
文件中,而必须写在.htm
layout/template
或markup section
之一中。
然后在js中的整个项目中都可以访问它。
alert(myName);
如果看起来与您无关,那么我们建议您发布laravel代码,该代码可以执行类似的操作,以便我们提供更好的工作相关解决方案。
如果有任何疑问,请发表评论。