2017-01-04 40 views
8

Đây có thể là một câu hỏi thực sự ngớ ngẩn, nhưng dù sao, tôi không thể tìm thấy câu trả lời.Cách 'nhập' thành phần Vue vào thành phần Vue

Vì vậy, tôi đang xây dựng thành phần Vue và muốn truy cập vào các thành phần của thành phần của tôi trong thành phần của mình là vue-spinner. Tôi sẽ làm như thế nào?

Dưới đây là đoạn mã trong câu hỏi:

app.js:

Vue.component('players', require('./components/TeamPlayersComponent.vue')); 

import GridLoader from 'vue-spinner/src/GridLoader.vue'; 

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

TeamPlayersComponent.vue:

<grid-loader></grid-loader> 

Giả sử rằng vue-spinner đã cài đặt (NPM) và rằng TeamPlayersComponent.vue là hợp lệ và làm việc khác tha n đưa ra lỗi này trong bảng điều khiển

vue.js?3de6:525 [Vue warn]: Unknown custom element: <grid-loader> - did you register the component correctly? For recursive components, make sure to provide the "name" option. (found in component <players> at /home/vagrant/code/rounds-smaa/resources/assets/js/components/TeamPlayersComponent.vue)

Tôi đang sử dụng Vue với Laravel Elixir và Gulp.

+1

Bạn đã thử bất kỳ phương pháp được đề xuất nào trong [tài liệu] (https://github.com/greyby/vue-spinner#npm). Hãy chia sẻ những gì bạn đã thử cho đến nay. – Nora

+0

Câu hỏi đã được cập nhật, cảm ơn bạn. – AshMenhennett

Trả lời

4

Giải pháp:

Thay thế mã cụ thể GridLoader trong app.js (Laravel thiết lập) với:

Vue.component('grid-loader', require('vue-spinner/src/GridLoader.vue'));

Làm việc như mong đợi!

7

Bạn có thể lấy nó bằng cách sau:

var PulseLoader = require('vue-spinner/src/PulseLoader.vue'); 

và thêm nó vào các thành phần:

new Vue({ 
    components: { 
    'PulseLoader': PulseLoader 
    } 
}) 
Các vấn đề liên quan