<script setup> 都无需额外的打包器接线即可使用。
什么场景适合用 Vue
- 你已经在生产环境中部署 Vue 应用。
- 你偏好使用 Vue 单文件组件,搭配 scoped 样式与 Composition API。
- 你希望扩展 UI 与既有的 Vue 架构保持一致。
模板示例
new-vue

content-vue

在现有扩展中使用
按下面的步骤把 Vue 添加到现有扩展。安装
安装所需依赖: 如果想在现有项目中显式配置,再安装 Vue 的 SFC 工具链:配置
Extension.js 期望 Vue 组件以.vue 文件存在。它会在 Rspack 管线中配置 vue-loader、VueLoaderPlugin 以及 Vue 相关的 define 标志。
开发期行为
当 Extension.js 检测到 Vue 时,它会:- 在框架插件中启用
.vue编译。 - 应用 Vue 运行时别名(保持运行时解析一致)。
- 支持 content script 在相关 Vue SFC 变更后重新挂载的更新方式。
排查
- Vue 工具缺失警告: 安装
vue-loader与@vue/compiler-sfc。 - 安装后提示重启: 停止并重新运行
extension dev,让 Extension.js 加载新安装的 loader/plugin。 - 意外的
.vue处理问题: 确认vue出现在项目依赖中,以便 Extension.js 启用 Vue 集成。
用法示例
在新标签页扩展中
要在新标签页扩展中使用 Vue,把入口文件引入 HTML:在 content_script 文件中
对于 content script,把 Vue 应用挂载到注入的根节点上:
最佳实践
- 让 UI 入口保持框架优先(
main.ts、App.vue),把扩展 API 放在专用模块里。 - 尽量在 SFC 中使用 scoped 样式,减少扩展页面里的样式泄漏。
- 对于大型 UI,拆分组件并抽取共享的 composable,让 content script 保持精简。
下一步
- 进一步了解 TypeScript 支持。
- 探索 Sass 和 Sass 模块。

