Laravel 从完全不相关的目录提供 app.js 和 app.css 文件

问题描述 投票:0回答:1

我使用的是Windows。我有一个 Laravel 6 / Vue 2 应用程序,并且使用 XAMPP 和 php 7.4.29 运行良好。 (我正在使用

php artisan serve
运行提到的项目)

然后我想运行一个使用 Laravel 8 的开源项目。它不适用于 php 7.4,需要我使用 php >= 8.1。因此,我删除了现有的 XAMPP 文件夹,并安装了 XAMPP 8.2.12,并且能够使操作系统项目正常工作。

我随后卸载了 XAMPP 8.2.12,然后(从存档中)提取了我之前使用过的 XAMPP/php 7.4.29。现在,Laravel 6 应用程序不再工作。 (Vue 应用程序无法加载)。

所以我从头开始创建了一个测试 Laravel 6 / Vue 2 项目,它也无法正常工作。 Laravel 欢迎页面加载,但是 Vue 对象未加载,引导程序也未加载)。所以我添加了一些测试跟踪来尝试看看发生了什么:

  • 在 resources/js/app.js (Vue 应用程序文件)中我添加了
    console.log("special text");
  • 在 publc/js 中,我添加了一个文件
    myapp.js
    ,它只调用
    console.log('my app');
  • 我添加了一个
    test.blade.php
    页面(并在
    /test
    进行路由),该页面使用
    layouts\app.blade.php
    - 调用 Vue 脚本的位置。

所以在 app.blade.php 中,我有这些行:

<!-- Scripts -->
<script src="{{ asset('js/app.js') }}" defer></script>        // has trace: console.log("special text")
<script src="{{ asset('js/myapp.js') }}" defer></script>   // has trace: console.log('my app')

当我加载测试页面(

localhost:8000/test
)时,控制台显示
my app
,但不是
special text

现在奇怪的部分来了。我查看了开发工具网络页面。正在提供的

app.js
app.css
与 public/js 和 public/css 文件夹中的同名文件具有不同的大小,并且经过检查,我发现内容也不同。它们是另一个项目(Laravel 8)的内容,该项目在 Windows 上处于完全不同的路径。 (app.css 使用的是 Tailwind css!!..)所以在我看来,
php artisan serve
,在某种程度上被困在服务这些其他页面上。我尝试过拨打
php artisan cache:clear
,但这并不影响问题。

如前所述,Laravel 6 和 Laravel 8 操作系统项目位于 PC 上完全不同的文件夹中。

如果相关,我创建了测试 Laravel 6、Vue 2 应用程序,其中包含以下内容:

composer create-project --prefer-dist laravel/laravel myapp "6.*"
cd myapp
composer require laravel/ui:^1.0 --dev
php artisan ui vue --auth
npm install && npm run dev
php laravel xampp
1个回答
0
投票

这让我感到困惑,但是有一个简单的答案。我需要清除 浏览器 缓存。

如果我使用不同的浏览器,就没有问题。我还可以在服务器日志中看到,只有

myapp.js
正在被服务,但是
app.js
app.css
没有被服务。因此,浏览器继续从其缓存中提供相同的页面(来自其他项目)。

对于这两个项目,我使用相同的 url,即 localhost:8000

© www.soinside.com 2019 - 2024. All rights reserved.