laravel - Nova 工具未更新

标签 laravel

我正在制作 Laravel Nova 应用程序。我正在尝试创建一个 Nova 工具来导入用户。 该工具创建得很好,但是当我更新代码时它不显示。

我对此进行了深入研究,问题似乎是 Vendor 文件夹中的工具没有更新。

当我执行 npm run dev 或 npm run prod 时,工具文件会在/nova-components/{componentname} 文件夹中更新,而不是在由 Nova 加载的 vendor 文件夹中。

我在 Windows 上使用 Xampp。 在我的 nova 服务提供商内部:

    /**
     * Get the tools that should be listed in the Nova sidebar.
     *
     * @return array
     */
    public function tools()
    {
        return [
            new UserImport()
        ];
    }

我的 Composer 文件:

"require": {
    "Vrumona/UserImport": "*"
},
"repositories": [
      {
          "type": "path",
          "url": "./nova"
      },
      {
          "type": "path",
          "url": "./nova-components/UserImport"
      }
  ],

如何确保工具在 composer vendor 文件夹中得到更新?

我可以删除 vendor 文件夹并运行 composer install,但这在开发时有点乏味。

谢谢!

最佳答案

很可能 composer 不是符号链接(symbolic link)包而是镜像。您可以通过查看运行 composer update 时的输出来确认——如果您看到 Mirrored from ... 则符号链接(symbolic link)不可用,这将导致您的问题重新看到。

正如您所注意到的,您可以使用以下命令在 Composer 文件中强制使用符号链接(symbolic link):

"options": {
    "symlink": true // Will force symlinks
}

如果需要,还有相关文档:https://getcomposer.org/doc/05-repositories.md#path

关于laravel - Nova 工具未更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53503521/

相关文章:

php - Laravel/Eloquent 查询效率: Should a separate table be used for these two columns?

php - 有没有办法从字符串编译 Blade 模板?

php - 如何在 Laravel 4 中使用 UPDATE 或 INSERT?

javascript - Vue.js (laravel 6) 的值未显示并在控制台中出现错误

php - 如何从 laravel 表单请求中获取 key ?

javascript - 在 Laravel 的选择框中单击鼠标如何显示模态框?

laravel - 如何检查当前应用程序进程是否在 Laravel 的队列环境中运行

mysql - Laravel 5 Eloquent 多对多关系问题

php - ubuntu上的文件夹权限

php - 使用 Laravel 避免重复输入约束冲突