Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

maxdb71's avatar

Nova tool creation: application not refreshing after vue component modification

Hi Everyone,

I created a new tool via nova:tool command. Everything seems to be ok but in case I update my vue component (tool.vue) after running "npm run dev" the application does not display the updated data.

My webpack.mix.js is the following:


let mix = require('laravel-mix')

mix.setPublicPath('dist') .js('resources/js/tool.js', 'js') .sass('resources/sass/tool.scss', 'css')

It seems to be a refresh problem, in fact if I stop and restart the docker containres and refresh the web page then it displays the updated information included in the vue componenet of the custom tool.

I'm using Laravel Nova v1.1.4

Do yuo have any idea to avoid containers stop/start?

Thanks, MaxdB71

0 likes
6 replies
crnkovic's avatar

Try hard refresh (which reloads browser cache) this usually works for me, since the JS is cached.

maxdb71's avatar

Hi crnkovic, just tried a hard refresh in chrome on my mac (shift + cmd + r), same result: the page doesn't update :-(

I guess the issue is not related to the browser cache (in fact logging in the app with a different browser does not work), I think is the "cache" of the framework, i.e. the fact that somehow the tool.js does not get updated.

Thanks, MaxdB71

vayu's avatar

Hi @maxdb71 , did you find a solution to this? I have the same problem and can't resolve it. I can see that the file in dist/js/tool.js renders the old content.

aurawindsurfing's avatar

Hi,

This is webpack / mix issue. Do this:

mix.setPublicPath('dist')
.js('resources/js/tool.js', 'js')
.sass('resources/sass/tool.scss', 'css')
.version()

This should do the trick.

Hope it helps!

laurentferreol's avatar

hello, I have the same issue when refreshing a Nova tool, page doesnt update and tool.js is unchanged. The solution provided by @aurawindsurfing dont works for me.

here is my webpack.mix.js

const mix = require('laravel-mix');


mix.js('resources/js/app.js', 'public/js')
   .sass('resources/sass/app.scss', 'public/css');

Here is the webpack.mix.js (nova-components/)

let mix = require('laravel-mix')

mix.setPublicPath('dist')
    .js('resources/js/tool.js', 'js')
    .sass('resources/sass/tool.scss', 'css')

Any idea is welcome

Thanks

Laurent

xmaop's avatar

change directory cd nova-componets/yourTool and run npm run dev

1 like

Please or to participate in this conversation.