0


这里的标签child不是跟注册组件的child是同级吗?怎么是父组件了
求详细解释下父组件 子组件
谢谢

8个回答

0

已采纳

这里的标签 child 就是 vue 注册的组件,这本来就是子组件。
而这个子组件,其实是存在于一个父组件里的,只是例子中没有写出来,其实是应该这样子的。

<father-component>
    <child message="hello!"></child>
</father-component>

child 是子组件,father是父组件,hello 和child 标签都存在父组件中,hello 通过 props 传进去给子组件使用。

0

也是初学者,这里的子组件应该是span吧,不对的地方还请指正

0

首先子组件与父组件都是组件,组件会区分父组件与子组件,只是谁包含谁,被包含的就是子组件。<child>在当前组件中,所以在当前组件文件中,他就是子组件

0

简单理解,父子组件之间的关系和父子元素之间的关系相当

0

简单来讲:
Vue.component()是制作子组件,<child></child>是制作好了,在父组件环境里面用

0

我也不是很理解这种父子组件的说法,但是可以简单理解为:使用的地方是父组件,定义的地方是子组件,虽然他们是同一个组件。。

0

要弄懂父组件,子组件,首先要知道怎么来的,分为两步。

一、Vue.extend() 创建构造器。如

var MyComponent = Vue.extend({
    template : '<div>A custom component!</div>'
});

二、Vue.component(MyComponent , constructor) 注这个组件构造器 如:
//全局注册组件

Vue.component('MyComponent ',  MyComponent);

组件在注册之后,便可以在实例的模块中以自定义元素使用。
下面再解释父子组件就容易多了,还是分两步。

一、//创建构造器(一样的哦):

父:

var father= Vue.extend({
    template : '<div>A custom component!</div>'
});

子:

 var child= Vue.extend({
        template : '<div>A custom component!</div>'
    });

二、//注册

父:

Vue.component('father',  MyComponent)

子:

var aaa= Vue.extend({
    template : '...',
    components : {//看这里       
        'my-component': Child
    }
})

(子组件注册位置在父级创建构造器的位置,注册属性名吧components,多了个s);
看完有没有觉得思路清晰一点儿了呢,我也是初学,当时不懂,找了好做资料,如果觉得对您有帮助那就最好了

0

官方文档的例子也就是你上传的那个是他定义的子组件,而引入(使用)子组件的那个就是父组件。这是一个相对的概念。

撰写答案