如何为Phoenix创建TypeScript监视器?配置后无法正常运行
Phoenix项目中TSC Watcher配置失效的修复步骤
你的TSC watcher配置格式不符合Phoenix的要求,导致无法正常启动,以下是具体修复步骤:
1. 修正Watcher配置格式
Phoenix的watchers要求每个命令的参数必须拆分为独立的列表项,不能把多个参数合并成一个字符串。把你配置中的tsc行替换为以下两种方式之一:
- 若全局安装了TypeScript:
watchers: [ esbuild: {Esbuild, :install_and_run, [:default, ~w(--sourcemap=inline --watch)]}, tailwind: {Tailwind, :install_and_run, [:default, ~w(--watch)]}, tsc: ["tsc", ~w(--noEmit --watch)] ]
- 若为项目本地安装TypeScript(推荐方式,避免全局依赖问题):
watchers: [ esbuild: {Esbuild, :install_and_run, [:default, ~w(--sourcemap=inline --watch)]}, tailwind: {Tailwind, :install_and_run, [:default, ~w(--watch)]}, tsc: ["./node_modules/.bin/tsc", ~w(--noEmit --watch)] ]
2. 确认TypeScript安装状态
- 执行
npm install typescript --save-dev(或yarn等价命令)完成项目本地安装 - 在项目根目录运行
npx tsc --version,确认能正常输出TypeScript版本号,验证安装有效性
3. 检查开发服务器启动方式
必须使用mix phx.server启动开发服务器,mix run --no-halt不会自动启动配置的watchers。启动后观察终端日志,确认是否有[watchers] tsc started类的启动提示。
4. 验证监听功能
修改项目中的任意.ts文件,查看终端是否输出tsc的类型检查信息(--noEmit不会生成编译文件,但会输出错误提示)。如果无输出,检查项目根目录的tsconfig.json配置,确保tsc能正确识别需要监听的文件范围。
内容的提问来源于stack exchange,提问作者bezzoon
相关产品推荐
相关产品推荐

