javascript - 使用 laravel 从 php 发送变量到 javascript 的最佳方法

标签 javascript php ajax laravel

现在我正在从 laravel 向 View 发送一个 json 并填充一个表单,问题是我需要根据来自 javascript 的数据进行某些修改。 现在我使用 Ajax 请求从服务器请求确切的数据,我认为这有点重复,我知道我可以做类似 (var data = {{$data}}) 的事情并在我的 js 文件中使用它.

我的问题是,什么是最好的解决方案?进行 ajax 调用或直接从 View 生成变量,我不知道从 View 生成变量是否是一种不好的做法。

谢谢

最佳答案

这是传递 javascript 变量的一种解决方案。 http://forumsarchive.laravel.io/viewtopic.php?id=2767

在 Controller 中

// controller
$js_config = array(
    'BASE' => URL::base(),
    'FACEBOOK_APP' => Config::get('application.facebook_app')
);

return View::make('bla')
    ->with('js_config', $js_config);

在 View 中

<script>
var config = <?php echo json_encode($js_config) ?>;

alert(config.BASE);
alert(config.FACEBOOK_APP.id);
alert(config.FACEBOOK_APP.channel_url);
</script>

图书馆也可用于此目的

https://github.com/laracasts/PHP-Vars-To-Js-Transformer

public function index()
{
    JavaScript::put([
        'foo' => 'bar',
        'user' => User::first(),
        'age' => 29
    ]);

    return View::make('hello');
}

这个问题有多种解决方法

关于javascript - 使用 laravel 从 php 发送变量到 javascript 的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21712146/

相关文章:

php - 大整数乘积差分算法

php - 在下一个链接分页中传递查询 - php

javascript - 如何使用 ajax 和 json 将图像呈现为下拉列表?

javascript - JQuery 可排序序列化

javascript - 如何在React中的同一个html元素上使用多个ref变量?

javascript - 如何将项目添加到列表?

php - AWS DynamoDB session 与 Elasticache PHP session

javascript - 从基于 JS 的 AIR 应用程序登录 ColdFusion 站点?

javascript - 在 jsx 对象中插入 html 标签以进行映射

javascript - 在 javascript 中存储和搜索键值对时,数组是否比对象更好?