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

如何在JSX中让Prettier忽略代码块?prettier-ignore-start无效

如何让Prettier忽略JSX中的整块代码块

方案1:正确使用块级忽略注释(推荐)

Prettier的/* prettier-ignore-start */和/* prettier-ignore-end */需要放在JS上下文中(而非JSX元素内部),包裹你想要忽略的整个JSX代码块,就能一次性跳过所有Route标签的格式化:

/* prettier-ignore-start */
<Routes>
  <Route path="/"           element={<Home      />} />
  <Route path="/aboutUs"    element={<AboutUs   />} />
  <Route path="/contact"    element={<Contact   />} />
  <Route path="/infos"      element={<Infos     />} />
  <Route path="/request"    element={<Request   />} />
  <Route path="/impressum"  element={<Impressum />} />
  <Route path="/whatsabu"   element={<WhatsaBu  />} />
  <Route path="/test"       element={<Test      />} />
  <Route path="/compare"    element={<Compare   />} />
  <Route path="/partner"    element={<Partner   />} />
  <Route path="/concept"    element={<Concept   />} />
  <Route path="/blog"       element={<Blog      />} />
  <Route path="/privacy"    element={<Privacy   />} />
  <Route path="/bonus"      element={<Bonus     />} />
</Routes>
/* prettier-ignore-end */

注意:如果你的Prettier版本较旧,块级忽略对JSX的支持可能不完善,建议升级到最新稳定版。

方案2:用数组生成路由(更易维护)

把路由配置抽成数组,手动对齐数组内的属性,Prettier不会破坏这种对齐(只要你的配置没有强制对象属性换行),同时还能让代码更易维护:

const routeConfigs = [
  { path: "/",           component: Home },
  { path: "/aboutUs",    component: AboutUs },
  { path: "/contact",    component: Contact },
  { path: "/infos",      component: Infos },
  { path: "/request",    component: Request },
  { path: "/impressum",  component: Impressum },
  { path: "/whatsabu",   component: WhatsaBu },
  { path: "/test",       component: Test },
  { path: "/compare",    component: Compare },
  { path: "/partner",    component: Partner },
  { path: "/concept",    component: Concept },
  { path: "/blog",       component: Blog },
  { path: "/privacy",    component: Privacy },
  { path: "/bonus",      component: Bonus },
];

<Routes>
  {routeConfigs.map(({ path, component: Component }) => (
    <Route key={path} path={path} element={<Component />} />
  ))}
</Routes>

这种方式不需要依赖Prettier忽略注释,同时路由配置和渲染逻辑分离,后续修改路由更方便。

方案3:单行忽略(备选)

如果块级忽略还是不生效,你可以在每个Route标签的前一行添加// prettier-ignore,精准控制忽略范围:

<Routes>
  // prettier-ignore
  <Route path="/"           element={<Home      />} />
  // prettier-ignore
  <Route path="/aboutUs"    element={<AboutUs   />} />
  // ...其他Route
</Routes>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 17:05:42