在JavaScript函数中使用php变量时在PhpStorm中预期的表达式

时间:2016-08-02 11:21:39

标签: javascript php phpstorm

当我使用将PHP变量更改为JavaScript变量时,我得到了#34;表达式预期"来自PhpStorm的错误。

我无法将文件的扩展名更改为something.js.php,因为我已经在使用刀片模板,因此它应该是blade.php

This is the first example

This is the second example



<!DOCTYPE html>
<html>
<body>
<?php $myVar = 5;?>

<script type="text/javascript">
    var myJavascriptVar = <?php echo $myVar; ?>;
    var myJavascriptSecondVar = {{$myVar;}};
    alert(myJavascriptVar + myJavascriptSecondVar);
</script>
</body>
</html>
&#13;
&#13;
&#13;

我添加了一个示例html页面以获得更多说明。在PhpStrom中

&#13;
&#13;
var myJavascriptVar = <?php echo $myVar; ?>;
&#13;
&#13;
&#13;

&#13;
&#13;
 var myJavascriptSecondVar = {{$myVar;}};
&#13;
&#13;
&#13;

语句给出表达式预期错误。

2 个答案:

答案 0 :(得分:8)

这是PhpStorm中的一个错误(不完整的语言间处理)。

观看这些门票(星级/投票/评论)以获得有关任何进展的通知。现在他们没有被分配到任何特定的未来版本。

答案 1 :(得分:2)

以下是两种解决方法:

<强> 1。功能

function blade(_)
{
    return _;
}

var data = blade({{ $data }});
// or ES6 arrow function
var data = (_ => _)({{ $data }});

<强> 2。阵列

var data = [{{ $data }}].pop();
// or
var data = [{{ $data }}][0];