混合清单不存在
Posted
技术标签:
【中文标题】混合清单不存在【英文标题】:The Mix manifest does not exist 【发布时间】:2018-08-05 00:18:14 【问题描述】:我用这个Laravel-Vue SPA starter project template 创建了一个简单的 laravel 项目,并将这个项目上传到了 ubuntu 服务器。所有设置正确,但我运行此项目返回此错误“。(查看:/var/www/html/project/resources/views/index.blade.php)”。
请任何人帮助我。我是 laravel 的新手。
【问题讨论】:
我认为你需要运行控制台命令npm run dev
或者如果你没有node_module 文件运行npm install
然后npm run dev
已经安装 npm install 和 composer install
【参考方案1】:
我认为这是因为您将 laravel 文件与公用文件夹分开。
而public_path()
返回错误的路径。
一定要试试dd(public_path())
。
如果这是错误的,您必须更正 index.php 文件中的路径并添加以下代码:
$app->bind('path.public', function()
return __DIR__;
);
我有同样的问题,发现问题是这样的。
也许回答这个问题已经晚了,但它可能对其他人有所帮助。
【讨论】:
【参考方案2】:我有同样的错误。这为我解决了。 npm run production
我尝试了npm run dev
,但它从未创建过manifest.js
。
【讨论】:
谢谢。为我工作,应该是选择的答案。【参考方案3】:如果您没有node_modules
文件夹,请运行npm install
,然后运行npm run dev
。
mix()
辅助函数默认在目录/public/manifest-json.js
中查找清单 json 文件。检查此文件是否存在。
【讨论】:
对我来说 manifest-json.js 在我的工作版本中不存在。 public 文件夹中有一个 mix-manifest.json,public/js 文件夹中有一个 manifest.js,但是将它们复制到我损坏的环境并不能解决任何问题。【参考方案4】:只需将mix(css/app.css)
更改为!! asset('css/app') !!
【讨论】:
【参考方案5】:也许它对某人有用,当我尝试访问此 URL example.com/nova/login
时,我发现此错误
The Mix manifest does not exist.
(View: example/nova/resources/views/auth/layout.blade.php)
在我的情况下执行下一个命令是错误的:
npm run production
npm run dev
php artisan vendor:publish --provider="Laravel\Horizon\HorizonServiceProvider"
等等。
我只是在恢复项目后忘记安装 Nova 库,php artisan nova:install
【讨论】:
【参考方案6】:你应该创建一个 storage/app/public 的符号链接
php artisan storage:link
【讨论】:
【参考方案7】:好的,所以这里的大多数人都提供了解决方案,但他们没有解释它,基本上最好的做法是,如果你使用 Laravel 的共享主机,你将项目文件夹放在 public_html 之外,然后将内容放在 public 中,你将它们放在 public_html 中。
所以你需要做的是不要删除项目根目录下的公用文件夹,只放mix-manifest.json
项目根目录下的公用文件夹中的文件,这将解决此问题
【讨论】:
【参考方案8】:在 App\Providers\AppServiceProvider.php 中:
public function register()
/**
* Set the public path.
*/
$this->app->bind('path.public', function()
return 'public path';
);
【讨论】:
感谢您的回答。您确定“h151778”是线程所有者服务器上的文件夹吗? 不,我弄错了,这只是我的一个样本以上是关于混合清单不存在的主要内容,如果未能解决你的问题,请参考以下文章
无法混合ecto.create,角色'postgres'不存在[重复]
Puppet - 在迭代哈希时,如果hiera中不存在,则设置清单中的默认值