Saya menggunakan Vue.js dan saya ingin mencoba merender komponen tetapi tidak berhasil

main.js:

import Vue from 'vue';
import 'bulma';
import Navbar from './Navbar.vue';

Vue.component('navbar', Navbar);
const MyC = Vue.component('myc', {
  template: '<h1>Are you working?</h1>',
});

const root = new Vue({
  el: '#app',
  components: {
    Navbar, MyC,
  },
});

index.html

<body>
  <div id="app">
    <navbar></navbar>
    <myc></myc>
  </div>
  <script src="dist/build.js"></script> <!-- Webpack endpoint -->
</body>

Navbar.vue

<template>
<h1>HELLO FROM NAVBAR</h1>
</template>

<script>
// Some logic here

export default {
  name: 'navbar',
};

</script>

Saya mengkodekan seperti yang tertulis dalam panduan tetapi tidak satu pun cara untuk membuat komponen berfungsi

Saya hanya memiliki halaman kosong

Saya menggunakan webpack+vue-loader

[PERBARUI]

Ini berfungsi tanpa impor komponen hanya merender template

[PERBARUI 2

Dapat pesan ini

[Vue warning]: Elemen kustom tidak dikenal: <navbar> - apakah Anda mendaftarkan komponen dengan benar? Untuk komponen rekursif, pastikan untuk memberikan opsi "nama".

0
Nick Gant 16 Agustus 2017, 17:02

2 jawaban

Jawaban Terbaik

Pindahkan kode Anda dari index.html ke app.vue, index.html adalah file html tetapi bukan file vue

Cobalah, sekarang akan berhasil, hidup bahagia.

//main.js
import Vue from 'vue'
import App from './App'

Vue.component('myc', {  //gobal components
  template: '<h1>Are you working?</h1>',
})

new Vue({
    el: '#app',
    template: '<App><App/>',
    components: {
        App
    }
})

//index.html
<body>
  <div id="app">
  </div>
  <script src="dist/build.js"></script>
</body>

//app.js
<template>
    <div class="app">
        <navbar></navbar>
        <myc></myc>
    <div
</template>

<script>
     import navbar from 'path of Navbar.vue'  //local components
     export default {
       name: 'app',
       component:{
         navbar
       }
     }
</script>
1
Zany 16 Agustus 2017, 15:21

Saya telah memindahkan semuanya ke App.vue

render: h => h(App) berhasil untuk saya

0
Nick Gant 16 Agustus 2017, 15:22