首页 技术 正文
技术 2022年11月14日
0 收藏 415 点赞 3,320 浏览 3015 个字
插件和Preset    插件        Vue CLI 使用了一套基于插件的架构        Vue CLI 使用了一套基于插件的架构。如果你查阅一个新创建项目的 package.json,就会发现依赖都是以 @vue/cli-plugin- 开头的。插件可以修改 webpack 的内部配置,也可以向 vue-cli-service 注入命令。在项目创建的过程中,绝大部分列出的特性都是通过插件来实现的。    基于plugin的架构是的Vue CLI 灵活且可扩展。    TIP        可以通过 vue ui 命令使用GUI install 和 manage plugin    在现有的项目中安装插件:vue add        vue add @vue/eslint        hint(提示)            vue add 的设计意图是为了安装和调用Vue CLI插件 .这不意味着替换掉普通的npm包。            对于这些普通的npm包,你任然需要选用包管理器    warn(警告):        我们推荐在运行 vue add 之前将项目的最新状态提交,因为该命令可能调用插件的文件生成器        并且很有可能更改你现有的file    这个命令将 @vue/eslint 解析为完整的包名 @vue/cli-plugin-eslint,然后从 npm 安装它,调用它的生成器    #等价之前的用法    vue add @vue/cli-plugin-eslint    如果不带 @vue 前缀,该命令会换做解析一个unscoped的包。    例如以下命令会安装第三方插件 vue-cli-plugin-apollo:        #安装并调用 vue-cli-plugin-apollo        vue add apollo    你也可以基于一个指定的 scope 使用第三方插件。例如如果一个插件名为 @foo/vue-cli-plugin-bar,你可以这样添加它:        vue add @foo/bar    你可以向安装的插件传递生成器选项(这样做会跳过命令提示):    vue add @vue/eslint --config airbnb --lintOn save    vue-router 和 vuex 的情况比较特殊--他们并没有自己的插件。但是你任然可以这样添加他们    vue add router    vue add vuex    如果一个插件插件语句被安装,你可以使用 vue invoke 命令跳过安装过程,只调用他的生产器。    这个命令会接收和vue add 相同的参数    hint        如果出于一些原因你的插件列在了该项目之外的其它 package.json 文件里,你可以在自己项目的        package.json 里设置 vuePlugins.resolveFrom 选项指向包含其它 package.json 的文件夹        Sample: 如果你有一个 .config/package.json file        {            "vuePlugins":{                "resolveFrom":".config"            }        }    project local plugins        如果你需要在project里直接访问plugin API 而不需要create一个完整的plugin,        你可以在package.json 文件中使用:vuPlugins.service选项        {            "vuePlugins":{                "service":["my-commands.js"]            }        }    每个文件都需要暴露一个函数,接受插件 API 作为第一个参数。关于插件 API 的更多信息可以查阅插件开发指南。    你也可以通过 vuePlugins.ui 选项添加像 UI 插件一样工作的文件:    {        "VuePlugins":{            "ui":{"my-ui.js"}        }    }Preset    一个Vue CLI preset 是一个包含create new project所需preset option 和 plugins 的JSON对象,让用户    无需再命令提示中选择他们。    在vue create 过程中save的preset 会被放在你的home folder下的一个配置文件中(~/.vuerc)你可以    通过直接edit这个file来调整、add、delete保持好的preset    Sample :    {        "userConfigFiles":true,        "router":true,        "vuex":true,        "cssPrepreocessor":"sass",        "plugins":{            "@vue/cli-plugin-babel":{},            "@vue/cli-plugin-eslint":{                "config":"airbnb",                "lintOn":["save","commit"]            }        }    }    Preset的数据会被插件生成器用来生产相应的project file.    除了上述这些字段,你也可以为集成工具添加配置:        {            "userConfigFiles":true,            "plugins":{...},            "configs":{                "vue":{...},                "postcss":{...},                "eslintConfig":{...},                "jest":{}            }        }    这些额外的config将会根据 useConfigFiles的value被合并到 package.json 或相应的config file中    sample,当"useConfigFiles":true 的时候,config 的value 将会被合并到 vue.config.js中Preset plugins 的Version manage    你可以显式地指定用到的plugin的version    {        "plugins":{            "@vue/cli-plugin-eslint":{                "version":"^3.0.0",                //该plugin的其它options            }        }    }注意对于官方插件来说这不是必须的——当被忽略时,CLI 会自动使用 registry 中最新的版本。不过我们推荐为         preset 列出的所有第三方插件提供显式的版本范围。允许插件的命令提示:    每个插件在项目创建的过程中都可以注入它自己的命令提示,不过当你使用了一个 preset,这些命令提示就会被跳过,因为 Vue CLI 假设所有的插件选项都已经在 preset 中声明过了。    在有些情况下你可能希望 preset 只声明需要的插件,同时让用户通过插件注入的命令提示来保留一些灵活性。    对于这种场景你可以在插件选项中指定 "prompts": true 来允许注入命令提示:        {            "plugins":{                "@vue/cli-plugin-eslint":{                    //让用户选取他们自己的ESLint config                    "prompts":true                }            }        }远程Preset    你可以通过发布git repo 将一个preset 分享给其它开发者。这个 repo 应该包含一个包含了 preset 数据的 preset.json 文件。然后你就可以在创建项目的时候通过 --preset 选项使用这个远程的 preset 了:    #从GitHub repo 使用preset    vue create --preset username/repo my-projectGitLab 和 BitBucket 也是支持的,如果要从私有repo获取请确保使用 --clone 选项:    vue create --preset gitlab:username/repo --clone my-project    vue create --preset bitbucket:username/repo --clone my-project加载文件系统中的Preset    当开发一个远程Preset的时候,你必须不耐其烦的向远程repo 发出push 进行反复测试. 为了简化流程    --preset  标记也支持本地的 .json 文件:    vue create --preset local.json my-project

插件和Preset

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,489
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,904
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,737
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,490
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:8,128
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:5,291