blok/laravel-javascript

JavaScript 变量辅助工具

1.1.1 2022-02-16 12:40 UTC

This package is auto-updated.

Last update: 2024-09-16 17:09:24 UTC


README

Scrutinizer Code Quality Build Status Packagist Packagist

安装

首先通过 Composer 安装此包。

composer require blok/laravel-javascript --prefer-dist
{
    "require": {
        "blok/laravel-javascript": "~1.1"
    }
}

Laravel 用户

如果您是 Laravel 用户,可以使用一个服务提供者来自动准备绑定等。


// config/app.php

'providers' => [
    '...',
    Blok\JavaScript\JavaScriptServiceProvider::class,
];

当这个提供者启动时,您将可以访问一个有用的 JavaScript 门面,您可以在控制器中使用它。

public function index()
{   
    javascript('foo', 'bar');
    // or
    javascript()->add('foo', 'bar');
    // area aliases for
    javascript()->set('foo', 'bar');
 
 
    javascript([
        'foo' => 'bar',
        'user' => User::first(),
        'age' => 29,
    ]);
    // or
    javascript()->add([
        'foo' => 'bar',
        'user' => User::first(),
        'age' => 29,
    ]);
    // area aliases for
    javascript()->set([
        'foo' => 'bar',
        'user' => User::first(),
        'age' => 29,
    ]);
    
    
    javascript()->namespace('_labels')->set(Label::all());
    // is an alias of
    javascript()->setNamepace('_labels')->set(Label::all());
}

在 Laravel 5 中,当然需要在控制器顶部添加 use JavaScript;

然后,您需要渲染 JavaScript。例如

<body>
    <h1>My Page</h1>
    
    @javascript() // render default '__app' namespace in window.__app global
    // is the same as 
    {!! javascript()->render() !!}
    // alternatively
    <script>{!! javascript()->render(null, [], false) !!}</script>
    
    @javascript('_labels') // render '_labels' namespace in window._labels global
    // is the same as
    {!! javascript()->render('_labels') !!}
    // alternatively
    <script>{!! javascript()->render('_labels', [], false) !!}</script>
</body>

版本控制

使用 SemVer 进行版本控制。

贡献

如果您发现任何问题,请提出问题。欢迎提交拉取请求!

作者

许可证

本项目采用 GPL 许可证 - 有关详细信息,请参阅 LICENSE 文件。