为了账号安全,请及时绑定邮箱和手机立即绑定

Twig 将参数作为 JSON 传递给 JS

Twig 将参数作为 JSON 传递给 JS

千巷猫影 2023-11-12 15:28:31
我目前正在开发一个迷你网络项目,它是一种逃脱游戏,我正在使用 Symfony 框架,这个框架对我来说是新的,所以基本上我正在学习如何通过这个项目使用我被阻止一个小问题,我不知道如何将数据传递到 JS 外部代码,我return $this->render("app/player_interface.html.twig",['player'=>$player]);在 Symfony 控制器中使用将玩家对象发送到树枝,然后在树枝中插入这个块      {% set player_data = {                pseudo: player.Username,                longitude: player.longitude,                latitude: player.latitude,            } %}    <div data-player='{{ player|json_encode|raw }}'>    </div>然后在 javascript 文件中使用:const player_data =document.querySelectorAll('[data-player]');const playerObject =Array.from(player_data).map(item => JSON.parse(item.dataset.player));console.log(playerObject);但是控制台日志向我显示了一个空数组,即使我打印了应该是 JSON 文件的player_data 变量,控制台也向我显示了一个空节点,我查看了许多网站和 Symfony 文档,但我找不到任何很好的详细例子。我希望您能帮助我并提前致谢。
查看完整描述

1 回答

?
智慧大石

TA贡献1946条经验 获得超3个赞

您的错误是您player在需要编码时进行编码player_data。尝试将您的代码更改为:

<div data-player='{{ player_data | json_encode | raw }}'></div>


查看完整回答
反对 回复 2023-11-12
  • 1 回答
  • 0 关注
  • 110 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信