我正在为Laravel 5制作一个包,它将使用bootstrap 3和jquery。 如何正确地将这些资产包含在我的包中? 如果一个使用我的软件包的人在他/她的项目中已经有了bootstrap和jquery怎么办?有必要检查一下吗? 我可以将它们放在我的文件夹资产包中,但如果这些资产已经在项目中呢?
答案 0 :(得分:2)
您无法检查项目是否已拥有这些资产,但如果您想将自己的项目作为资产包的一部分包含在内,则可以向提供商提供。
建立一个提供商并在config/app.php
注册(如果您的包已经没有),并且在boot()
方法中您可以"发布"将您的包文件夹中的资产(复制)复制到Laravel应用程序的 public 文件夹中。
$this->publishes( [
realpath( base_path( 'your/package/folder/with/assets' ) ) => public_path( 'desired/folder/in/public' )
], 'public' );
答案 1 :(得分:0)
如果您使用默认文件而未进行任何修改。然后最好从在线存储库使用,因为保持公开可能会覆盖用户自定义设置。保持包装尽可能小是明智的。 此外,您无法检查用户的整个项目中的这些文件