前端/移动开发面试题更新 2026-08-05

在 Vue 中,is 特性是什么?它通常用于哪些场景或需求?

前端/移动开发技术原理方案权衡Vue

考察说明

考查对 Vue 内置 is 特性的理解及其实践场景。

回答思路

  1. 【回答框架 1】is 是 Vue 的一个特殊 attribute,用于动态切换或指定组件。在原生 HTML 元素上使用 is 可以将其解析为指定组件,例如 <li is='component-name'>;在 <component :is='...'> 中则用于动态组件,根据绑定的值渲染不同组件。
  2. 【回答框架 2】主要应用场景包括:解决某些 DOM 模板解析限制,如表格内的 <tr>、<ul> 内的 <li> 等必须使用特定标签,此时用 is 指定组件名;动态组件切换,结合 <component> 和 :is 实现多组件按需渲染;以及异步组件或内置特殊元素如 keep-alive、transition 的组合使用。
  3. 【回答框架 3】在 Vue 2 和 Vue 3 中,is 在原生元素上的行为有所差异,Vue 3 中更推荐使用动态组件 <component>,且 is 对原生元素的支持有更严格的限制(如需要带 vue: 前缀)。理解这一差异对实际开发很重要。
  4. 【关键点 1】is 用于动态组件渲染,值是组件对象或名称。
  5. 【关键点 2】在原生 HTML 上使用 is 可绕过标签限制,如 <tr>、<li>。
  6. 【关键点 3】Vue 3 中 <component> 是动态组件的推荐方式,原生 is 行为有变。
  7. 【易错点 1】在 DOM 模板中使用 is 时,组件名应为 kebab-case,避免解析问题。
  8. 【易错点 2】Vue 3 中在原生元素上使用 is 需加 vue: 前缀,否则可能被当作普通属性。