javascript 为vue组件创建别名?

yzckvree  于 2023-05-05  发布在  Java
关注(0)|答案(5)|浏览(133)

我想重命名或创建一个别名的Vue组件从插件内导出。
假设这是我使用库的方式

import VModal from "vue-js-modal";
Vue.use(VModal);

这向我公开了一个modal组件。我想在我的应用程序中使用它作为my-modal,如何才能做到这一点?
P.S.一些库确实提供了一种重命名的方法,但由于一些限制,我希望能够在我的终端更改它。

deyfvvtc

deyfvvtc1#

你导入的东西的名字**只有在你用花括号导入的时候才重要,因为你是从那个文件/包/whatever导入特定的东西。
如果你不使用花括号,你只是导入任何从那个文件/package/whatever中默认导出的东西,因此可以给予它任何你想要的名字。
例如,类似这样的东西意味着“从z中专门导入x和y”:

import { x, y } from 'z'

这些名称xy需要与z中导出的名称相对应。
然而,类似这样的东西只是说“从z导入默认的东西,并给予它一个别名MyThing”:

import MyThing from 'z'

如果你想给予一个非默认的导入一个名字,你需要这样做:

import { x as MyThing } from 'z'

这将导入非默认的东西x,并给予别名MyThing

7jmck4yq

7jmck4yq2#

new Vue({ el: '#app', components: { 'component-a': ComponentA, 'component-b': ComponentB } })更多详情请点击链接https://v2.vuejs.org/v2/guide/components-registration.html

o7jaxewo

o7jaxewo3#

Vue.component('my-modal',VModal)

x33g5p2x

x33g5p2x4#

当你导入它。喜欢

import my-modal from 'vue-js-modal'

然后

Vue.use(my-modal);
dbf7pr2w

dbf7pr2w5#

刚才也有类似的问题。
我想导入两个名称相同但模块不同的组件,如下所示:

import LabelsField from '@/components/Index/LabelsField'
import LabelsField from '@/components/Form/LabelsField'

导入默认值并创建别名工作正常:

import { default as LabelsFieldIndex } from '@/components/Index/LabelsField'
import LabelsField from '@/components/Form/LabelsField'

...

  components: {
    LabelsFieldIndex,
    LabelsField
  },

相关问题