vue环境下一个主页面引入多个子组件的方法

通常我们使用的是单个文件引入,但是这样就会有很多代码是重复的,怎样才能实现“按需“引入呢?

1、常见的引入单个vue文件的写法:import Header from '@/view/layout/Header';

 

2、实现”按需“引入的写法:

”按需“引入多个vue文件的写法:import {Header,Footer,Content} from '@/view/layout';

使用步骤:

(1)这些被引入的文件放置在同一个文件下

可以看到 Header、Footer、Content都是在layout文件夹下的;

(2)配置(1)文件夹下的index.js 文件内容

   该index.js文件为自己创建的;

   配置如下:

export { default as vue文件名 } from './vue文件名';

将layout文件夹下的需要引入的文件都以这种方式写在这里;

接下来只需要在需要使用这些vue组件的文件中以这种方式引入,并设置成组件即可。

<script>
import {Header,Footer,Content} from '@/view/layout';
//import Header from '@/view/layout/Header';
export default {
  name: 'Layout',
  data () {
    return {
      msg: 'layout'
    }
  },
  components: {
      Header,
      Content,
      Footer
    },
}
</script>

本人的理解:

在没有标明文件的后缀时,先去找的是名一样,如果没有其他干扰项,基本上就是这个文件。

或者:

先去找js文件,有export导出的文件,再其他文件。

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue 中,我们可以将一个页面分成多个组件,然后在页面引入和注册这些组件,最终组合成一个完整的页面。 假设我们有一个页面 `App.vue`,和两个组件 `Header.vue` 和 `Footer.vue`,它们的代码如下: ```html <!-- Header.vue --> <template> <header> <h1>Header</h1> </header> </template> <!-- Footer.vue --> <template> <footer> <h1>Footer</h1> </footer> </template> ``` ```html <!-- App.vue --> <template> <div> <Header /> <h1>Content</h1> <Footer /> </div> </template> <script> import Header from './components/Header.vue' import Footer from './components/Footer.vue' export default { components: { Header, Footer } } </script> ``` 在这里,我们首先在 `Header.vue` 和 `Footer.vue` 中定义了两个组件,然后在 `App.vue` 中通过 `import` 引入这两个组件,再使用 `components` 属性来注册这两个组件。在模板中,我们直接使用组件的标签名来引用它们,就可以将它们插入到页面的指定位置上了。 需要注意的是,组件的命名应该使用 PascalCase(首字母大写)格式,而在使用时应该使用 kebab-case(短横线分隔)格式,否则 Vue 会报错。在组件定义时,我们可以使用 `name` 属性来指定组件的名称,这样就可以在使用时使用 PascalCase 格式了。例如: ```html <!-- Header.vue --> <template> <header> <h1>Header</h1> </header> </template> <script> export default { name: 'Header' } </script> ``` 然后在 `App.vue` 中就可以使用 `<Header />` 来引用这个组件了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值