Blade view not reflecting changes

2019-03-14 13:27发布

问题:

I am developing a Laravel(5.2.29) project in Windows environment and testing it on Chrome browser.

I have made some changes on a Blade file using atom text editor and then refreshed my page and noticed that suddenly it has stopped reflecting the changes (it's loading the old Blade file).

I've tried the following:

  • Restarted the browser
  • Clearing browser cache
  • Running php artisan cache:clear
  • Running composer dumpautoload
  • Deleting the Blade file (and got a view not found error). Then created a new Blade file with the same name, with no content and refreshed the page.

No matter what, the code displayed on the browser is always the same (old) version and not the content of the Blade file.

How can I solve this issue?

回答1:

In order to avoid the parsing of Blade files on each reload, Laravel caches the views after Blade is processed. I've experienced some situations where the source (view file) is updated but the cache file is not "reloaded". In these cases, all you need to do is to delete the cached views and reload the page.

The cached view files are stored in storage/framework/views.



回答2:

Run this command from terminal

php artisan view:clear


回答3:

If you use PHPStorm, uncheck Preserve files timestamps deployment option: https://stackoverflow.com/a/42534996/2453148



回答4:

Alternatively if other suggested methods did not work, you can rename your files to different names. Refresh their corresponding web pages to start using new file name reference. Then you can rename the files back to your preferred names after the new pages to reflect their changes.



回答5:

You can also check if opcache enabled, in that case you need to clear your opcache cache.



回答6:

Clear the cache and clear the cached blade files:

php artisan cache:clear
php artisan config:clear
php artisan view:clear


标签: laravel blade