有的时候,当我们从后台拉取出数据后,想传递给前端Javascript
进行数据填充或者操作,我们应该怎么操作呢?
其实前端获取数据的办法无非就两种:
- 使用
AJAX
从后端获取数据 - 后端获取数据后传递给前端页面(放置于
html
元素中或直接赋值给js
)
第一种方法我们今天不做讲解,我们主要来关注第二种方法。
第二种方法将数据放置于HTML
元素中其实非常简单,我们今天要讲的是如何在Laravel
中直接将PHP
变量传递给Javascript
。
首先我们需要熟悉Blade
模板的概念,对于采用了Blade
模板的View
,实际上都会经过编译一遍的。
我们在View
中,可以直接使用如下方法进行js
的赋值:
<script>
var tmpNumber = {{ $number }};
var tmpString = '{{ $string }}';
</script>
由于后台PHP
语言在页面请求时会首先被执行,而Javascript
会在页面加载时才会运行,所以以上的代码片段可以保证我们js
中的变量正常被赋值。
需要注意的是,如果你的
PHP
变量为数字,那么可以不需要加上''
(引号),而如果你的变量是字符串(String
),那么你需要使用''
或`` (backtick
),前者为单行字符串,后者为多行(multi-line
)字符串。