webpack - 使用 Webpack 导入 Vue 组件

标签 webpack vue.js

我有一个带有 Webpack 的 hello world Vue 应用程序设置,并且初始 App 组件可以正常工作并安装到 body 上。尽管在该 App 组件中我无法弄清楚如何使用我制作的更多组件。

main.js

import Vue from 'vue'
import App from './app.vue'
    
new Vue({ 
  el: 'body',
  components: { App }
})

app.vue

<template>
  <div class="message">{{ message }}</div>
</template>

<script>
  export default {
    data () {
      return {
        message: 'Hello World'
      }
    }
  }
</script>

我试过了

import TopBar from './top-bar.vue'

然后在 main.js 和 app.vue 的脚本部分尝试使用

<top-bar></top-bar>

没有运气。

我想我错过了如何正确注册组件,例如在它所做的 Vue 文档中:

Vue.component('top-bar', TopBar)

但我认为在将 webpack 与 vue-loader 结合使用时,我需要做一些不同的事情。

最佳答案

你可以像你展示的那样全局注册它,或者如果你想在本地注册它以便在单个组件中使用,你需要将它添加到 Vue 实例的 components 对象中:

<template>
  <top-bar></top-bar>
  <div class="message">{{ message }}</div>
</template>

<script>
import TopBar from './top-bar.vue'

export default {
  components: {
    TopBar
  },
  data () {
    return {
      message: 'Hello World'
    }
  }
}
</script>

关于webpack - 使用 Webpack 导入 Vue 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35416970/

相关文章:

javascript - 使 v 菜单标题固定在顶部

vue.js - 如何在 VueJS 中初始化 Swiper?

javascript - Vue.js : Call a child method from the parent component

ruby-on-rails - 将 Rails 环境暴露给 Webpacker

javascript - Webpack imports-loader with messageformat 和 angular-translate

javascript - 如何在方法中使用的 vue apollo 查询中重新获取/更新结果

vue.js - 如何使用 VueJS 中的 API 将数据表单以 JSON 形式发布

javascript - Symfony 3.3 前端堆栈与 encore - 全局 jquery 插件

css - 使用 css 文件设置根元素样式,但不起作用

javascript - 我已经使用 webpack 生成了bundle.js,但我的 React 应用程序继续使用/static/bundle.js