You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过命令提示符同时使用npm run watch与php artisan serve?

同时运行 npm run watch 和 php artisan serve 的几种实用方法

嘿,这个问题我之前也碰到过!因为npm run watch是个持续运行的进程,会占着你的终端会话,导致没法再输入其他命令。下面给你几种靠谱的解决办法,能让你用一条命令同时启动这两个服务:

1. 用 concurrently 包(跨平台首选)

这是最推荐的方式,不管你用Windows、macOS还是Linux都能用,还能清晰区分两个进程的输出日志。

  • 首先安装这个包到开发依赖:
    npm install concurrently --save-dev
    
  • 打开项目根目录的package.json,在scripts里新增一个自定义命令,比如叫dev:
    "scripts": {
      "watch": "npm run watch", // 保留你原来的watch命令
      "serve": "php artisan serve",
      "dev": "concurrently \"npm run watch\" \"php artisan serve\""
    }
    
  • 之后只要在终端输入这条命令,就能同时启动两个进程了:
    npm run dev
    
    如果你想区分两个进程的输出颜色,还可以加个颜色参数,比如让watch输出蓝色,serve输出绿色:
    "dev": "concurrently -c \"blue,green\" \"npm run watch\" \"php artisan serve\""
    

2. 用终端后台运行(适合Linux/macOS或WSL)

如果你不想装额外的包,Linux和macOS的终端支持直接把进程放到后台运行:

  • 直接在终端输入:
    npm run watch & php artisan serve
    
    这里的&符号会把npm run watch放到后台执行,当前终端就可以正常运行php artisan serve了。如果之后想把后台的watch进程拉回前台,输入fg就行;要关闭它的话,可以用kill %1(%1是后台进程的编号,你可以用jobs命令查看)。

3. Windows CMD/PowerShell 专属方法

如果用的是Windows的原生CMD或者PowerShell,可以用start命令新开一个窗口运行watch:

  • 输入这条命令:
    start npm run watch && php artisan serve
    
    它会弹出一个新窗口运行npm run watch,当前窗口则运行php artisan serve,两边的日志互不干扰。

小提示

如果你用的是新版Laravel,其实npm run dev本身就会启动Vite的开发服务器,不过如果你的场景确实需要同时跑php artisan serve,上面的方法都能完美解决你的问题。

内容的提问来源于stack exchange,提问作者alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.01 01:02:28