Vue.js: почему мой компонент Single File не отображается / не отображается в моем шаблоне - PullRequest
0 голосов
/ 17 июня 2019

В настоящее время я учусь создавать веб-приложение, используя Vue.js.Я использовал vue-cli (версия 3.8.2) для создания приложения HelloWorld.

Я изменил сгенерированный компонент HelloWorld.vue следующим образом:

/ path / to / vue-app / src / components / HelloWorld.vue

<template>
  <div class="hello">
        <b-tabs content-class="mt-3">
            <b-tab title="module1" active>
                <Module1/>
            </b-tab>
        </b-tabs>
    </div>
</template>

<script lang="ts">
import { Component, Prop, Vue } from 'vue-property-decorator';
import Module1 from './Module1.vue';

@Component
export default class HelloWorld extends Vue {
  @Prop() private msg!: string;
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h3 {
  margin: 40px 0 0;
}
ul {
  list-style-type: none;
  padding: 0;
}
li {
  display: inline-block;
  margin: 0 10px;
}
a {
  color: #42b983;
}
</style>

/ путь / к / vue-app / src / components / Module1

<template>
    <div class="module1">
        Module1
    </div>
</template>

<script>
    import { Component, Prop, Vue } from 'vue-property-decorator';

@Component
export default class Module1 extends Vue {
}    
</script>

<style>
</style>

/ путь / к / vue-app/src/router.ts

import Vue from 'vue';
import Router from 'vue-router';
import Home from './views/Home.vue';

Vue.use(Router);

export default new Router({
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home,
    },
    {
      path: '/about',
      name: 'about',
      // route level code-splitting
      // this generates a separate chunk (about.[hash].js) for this route
      // which is lazy-loaded when the route is visited.
      component: () => import(/* webpackChunkName: "about" */ './views/About.vue'),
    },
  ],
});

Когда я перехожу к http://localhost:8080/ Содержимое моего модуля Module1 не отображается на странице.

Почему компонент не отображается (как отображается) и как мне решить эту проблему?

1 Ответ

0 голосов
/ 17 июня 2019

Вы должны зарегистрировать свой Module1 компонент перед его использованием (странно, что вы не получили никакой ошибки). В машинописи вы должны зарегистрировать компоненты внутри @Component декоратора, например:

@Component({
  components: {
    Module1
  }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...