首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Nuxtjs插件注册

Nuxtjs插件注册
EN

Stack Overflow用户
提问于 2019-06-11 21:37:05
回答 1查看 1.5K关注 0票数 3

我对Nuxt.js注册插件所用的方法很好奇。我一直在阅读Nuxt.js的文档,我对注册方法有点困惑。

I不希望在全球注册诸如vue-flag-icon之类的插件。

我的理解是,当我们注册插件时,我们使用插件文件夹:

代码语言:javascript
复制
import Vue from 'vue'
import FlagIcon from 'vue-flag-icon'


Vue.use(FlagIcon)

我现在可以在我的应用程序中的任何地方使用标志组件-我不想这个!

我希望能够将插件加载到只需要它们的组件中。

我尝试将它们作为一个组件加载,如下所示:

代码语言:javascript
复制
components:{
 'flag': ()=> import('path to plugin') // @/plugins/vue-flag-icon
}

这不管用。

我将插件脚本更改为:

代码语言:javascript
复制
import Vue from 'vue'
import FlagIcon from 'vue-flag-icon'

export default () => {
  Vue.use(FlagIcon)
}

然后尝试在组件中注册插件,如:

代码语言:javascript
复制
   import flag from '@/plugins/vue-flag-icon';

    created(){
       flag()
   }

我的问题是:

  1. 如何在不导入vue实例的情况下在组件中注册插件?(我想这叫公共汽车)
  2. 直接将插件导入组件是不好的做法吗?
  3. 是在nuxt.config.js中注册所有插件,创建一个更大的下载文件供用户下载(例如:在没有文本区域的页面上注册vue-twix是不必要的),还是nuxt/webpack将逐个页面或组件处理删除不必要的插件(所以我甚至不用担心这个问题)?如果是这样的话。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-13 16:11:04

如果您只想在某些组件上使用FlagIcon,则必须导入它,并在您想要使用的每个组件上使用它。

代码语言:javascript
复制
<template>
  <flag iso="ca" />
</template>

<script>
import FlagIcon from 'vue-flag-icon'
export default () => {
  components: {
    FlagIcon
  }
</script>

这应该能行。

对于其他组件,请记住导入组件可能需要的任何样式表:

代码语言:javascript
复制
<style lang="scss" scoped>
  @import 'path/to/plugin/style.css';
</style>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56551985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档