使用 PHP2JS 在 PHP 和 JavaScript 之间共享数据
php  /  管理员 发布于 11个月前   252
Laravel的PHP2JS软件包是一种标准化PHP与JavaScript共享数据的方法。
https://rmunate.github.io/PHP2JS/v4/
在前台和后台之间共享数据的方法有很多,因此这个软件包可能并不适合所有人,
但它可以为你提供一个简单的解决方案,以一致的方式与 JavaScript 共享数据。
下面是文档中的一个示例,说明了该程序包如何从控制器与视图共享数据,
并使 JavaScript 可以访问这些数据:
class YourController extends Controller
{
public function index()
{
return view('welcome')->with([
'moonLandingDate' => '1969-07-20'
])->toJS();
}
}
这可通过包含视图数据的 PHP2JS 对象来实现:
let moonLandingDate = PHP2JS.data.moonLandingDate;
// '1969-07-20'
您还可以使用 toStrictJS() 方法定义应与视图共享的值,
这些值与传递给 Blade 视图的值是分开的:
$astronauts = [
'Neil Armstrong',
'Buzz Aldrin',
'Michael Collins'
];
return view('welcome')->with([
'astronauts' => $astronauts
])->toStrictJS([
'spacecraft' => "Lunar Module Eagle",
'event' => "Apollo 11 Moon Landing",
]);
最后,您还可以通过 PHP2JS 对象上的软件包函数来处理 JavaScript 可用的数据对象:
// Assign a copy of the object to a new variable at runtime.
// Remember to replace PHP2JS with the Alias you have used.
const __PHP = PHP2JS.assign();
// Extract data or validate if it exists in
// the object delivered by PHP:
const post = PHP2JS.only('post');
const hasPost = PHP2JS.has('post');
// Get a value
PHP2JS.get("date");
这个软件包还提供了一个名为 QuickRequest 的工具,
用于简化从 JavaScript 向 Laravel 后端提出 API 请求的过程:
/**
* Considering that this value is retrieved from
* somewhere in a JS variable.
*/
const idRecord = 10;
/**
* Use the route structure created in web.php.
*/
QuickRequest().get({
url: '/record/' + idRecord,
success: function (res) {
console.log("Successful Process, Data: ", res.data);
},
error: function (err) {
console.error("Error: " + err.data.message);
}
});
您可以在官方文档中了解有关此软件包的更多信息、获得完整的安装说明并查看示例;
https://rmunate.github.io/PHP2JS/
项目源代码也可在 GitHub 上的 rmunate/PHP2JS 获取。
https://github.com/rmunate/PHP2JS
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号