# 自动导入vue3函数loader **Repository Path**: guoweijun/auto-import-vue3-loader ## Basic Information - **Project Name**: 自动导入vue3函数loader - **Description**: 可自动导入vue3函数的webpack loader,支持script setup语法糖; - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-01-18 - **Last Updated**: 2022-01-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: webpack, loader ## README # 自动导入vue3函数loader #### 介绍 可自动导入vue3函数的webpack loader,支持script setup语法糖; #### 原理 1. 用 **vue/compiler-sfc** 获取script中的代码。 2. 用 **@babel/parser** 处理代码,获得AST。 3. 用 **@babel/traverse** 遍历AST其中的*Identifier*类型节点,并判断其是否为vue3包中导出的函数,并保存函数名。 4. 遍历用到的函数名列表,拼接生成导入语句,插入到script代码的第一行。 5. 原source.replace进行替换,返回处理后的source。 #### 安装教程 1. npm install auto-vue3-loader -D #### 使用说明 1. 在vue-loader之前使用该loader ```javascript // webpack 配置 const webpackConfig = { // ... module: { rules: [ { test: /\.vue$/, use: [ 'vue-loader', 'auto-vue3-loader' ] }, // ... ] }, } ``` ```javascript // vue-cli 配置 // vue.config.js module.exports = { configureWebpack: { module: { rules: [ { test: /\.vue$/, use: [ 'vue-loader', 'auto-vue3-loader' ] }, // ... ] }, } } ``` 2. 关闭eslint。很尴尬,但确实没啥办法解决。 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)