模板或渲染函数未在vue-youtube-embed中定义

时间:2018-06-12 15:41:25

标签: javascript vue.js

我正在使用此插件进行vue https://github.com/kaorun343/vue-youtube-embed 但是当我使用它时。它给了我这个错误。我不知道导致此错误的原因

Vue warn]: Failed to mount component: template or render function not 
defined.

这是我的源代码

        <template>
        <div>
            <youtube :video-id="'wyNGaq8XmH8'"></youtube>
        </div>
    </template>

    <script>
        import VueYouTubeEmbed from  'vue-youtube-embed'
        Vue.component('youtube',VueYouTubeEmbed)
        export default {
            props:['progamData'],
            data(){
                return{
                    programs:[],
                    currentVideo:null,
                    player:null
                }
            }

        }
    </script>

提前感谢任何帮助

1 个答案:

答案 0 :(得分:1)

vue-youtube-embed库被设计为插件。这条线,

@docs

导入插件,而不是组件。如果要将其本地导入组件,则需要这样做:

import VueYouTubeEmbed from  'vue-youtube-embed'

这是working example

或者,您可以在主脚本中使用该插件。

import VueYouTubeEmbed, {YouTubePlayer} from "vue-youtube-embed";
import Vue from "vue"

Vue.use(VueYouTubeEmbed, {global: false})

export default {
  name: "App",
  components: {
    youtube: YouTubePlayer
  }
};

这是working version