Laravel 在包中使用包

Jen*_*sen 1 php package composer-php laravel-5

我正在 Laravel 5.5 中开发一个包,我需要这个包:

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

问题是它由于某种原因没有注册。当我添加时JavaScriptServiceProvider.php什么也没有发生。当我使用Javascript外观时,我收到一个错误,它不存在?!

我的包composer.json文件:

"require": {
        "php" : "^7.0",
        "illuminate/support": "~5.5.0",
        "laracasts/utilities": "^3.0"
    },
Run Code Online (Sandbox Code Playgroud)

我使用 Laravel 5.5,因此应该默认注册它(laracasts 包中的composer.json):

"extra": {
        "laravel": {
            "providers": [
                "Laracasts\\Utilities\\JavaScript\\JavaScriptServiceProvider"
            ],
            "aliases": {
                "JavaScript": "Laracasts\\Utilities\\JavaScript\\JavaScriptFacade"
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?

Seb*_*ian 6

我在自己的包中使用不同的其他包时遇到了同样的问题。

以下是对我有用的步骤:

  1. 将所需的包添加为您自己的包中的依赖项:

    作曲家需要 laracasts/实用程序
  2. 更新 Laravel 项目中的包(例如,通过增加版本号或删除包并重新安装)。

    主 Laravel 项目中的作曲家更新#
  3. 然后你应该看到,在主 Laravel 项目中,会自动发现你自己的包以及对 laracasts/utilities 的依赖。

让我知道这是否对您有帮助或者我是否可以提供更多帮助。