介绍
小编给大家分享一下laravel自定义模板指令-tojs的示例,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
叶片允许你自定义命令,你可以使用指示方法注册命令。当叶片编译器遇到该命令时,它将会带参数调用提供的回调函数.blade模板可以通过指示方法来自定义模板指定,
tojs指令主要用于PHP自定义一些数据转换为js对象方便js调用
引用>1。创建ToJsServiceProvider
& lt; php ? namespace 应用\提供商; use 应用\助手\ ToJs \ ToJs; use 阐明\ \外墙\叶片的支持; use 阐明\ \ ServiceProvider的支持; class ToJsServiceProvider  extends ServiceProvider { ,,,/* * ,,,,*,Bootstrap 从而application 服务。 ,,,, ,,,,*,@return 空白 ,,,*/,,,public function 引导() ,,,{ ,,,,,,//,,,} ,,,/* * ,,,,*,Register 从而application 服务。 ,,,, ,,,,*,@return 空白 ,,,*/,,,public function 注册() ,,,{ ,,,,,,,这个美元→程序→单例(& # 39;tojs& # 39;,, function (), { ,,,,,,,,,,,return new ToJs (); ,,,,,,,}); ,,,,,,/* ,,,,,,,*,从而block of code inside 却;能够directive 显示 ,,,,,,,*,从而chosen javascript 变量。 ,,,,,,*/,,,,,,,叶片::指令(& # 39;tojs& # 39;,, function (), { ,,,,,,,,,,,return & # 39; & lt; script>, window.Laravel =, & # 39;,只json_encode(应用程序(& # 39;tojs& # 39;)→get()),只& # 39;& lt;/script> & # 39;; ,,,,,,,}); ,,,} }2。ToJs方法主要是对数组的一些操作
& lt; php ? namespace 应用\助手\ ToJs; use 阐明\ \ Arr的支持; class ToJs { ,,,protected data 美元;=,[]; ,,,public function (array 元数据) ,,,{ ,,,,,,,foreach (data 美元;as key 美元;=祝辞,美元值),{ ,,,,,,,,,,,这个美元→数据(关键美元),=,价值(美元价值); ,,,,,,,} ,,,,,,,return 美元; ,,,} ,,,public function ($ key =, null,, default 美元;=,null) ,,,{ ,,,,,,,if (! $键),return $ this→数据; ,,,,,,,return 加勒比海盗:获得($ this→数据,键,美元,美元默认); ,,,} ,,,public function 忘记(键) ,,,{ ,,,,,,,加勒比海盗:忘记美元($ this→数据,键); ,,,,,,,return 美元; ,,,} }3。声明立面
namespace 应用\助手\ ToJs \外墙; use 阐明\ \外墙\正面的支持; class ToJsFacade  extends 外观 { ,,,/* * ,,,,*,Get 从而registered name of 从而组件。 ,,,, ,,,,*,@return 字符串 ,,,*/,,,protected static function getFacadeAccessor () ,,,{ ,,,,,,,return & # 39; tojs& # 39;; ,,,} }4。在配置数组添加serviceProvider
提供者添加
<代码> \ App \ \ ToJsServiceProvider提供者::类代码>别名添加
<代码> & # 39;ToJs& # 39;=比;\ App \助手\ ToJs \外墙\ ToJsFacade::类,代码>5。为了方便调用可以在写一个辅助方法
if (! function_exists (& # 39; to_js& # 39;)), { ,,,/* * ,,,,*,Access 从而javascript 辅助。 ,,,*/,,,function to_js ($ key =, null,, default 美元;=,null) ,,,{ null null null null null null null null null null nulllaravel自定义模板指令-tojs的示例