Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript vue.js中谁是孩子,谁是家长_Javascript_Vue.js - Fatal编程技术网

Javascript vue.js中谁是孩子,谁是家长

Javascript vue.js中谁是孩子,谁是家长,javascript,vue.js,Javascript,Vue.js,我对Vue.js相当陌生。我做了一些关于Vue组件之间通信的简单练习。但我仍然有一个问题,谁是孩子,谁是父母。例如,我有以下代码: HTML: <body> <div id="root" class="component"> <coupon @applied="onCouponApplied"></coupon> </div> <script src="https://cdn.jsdelivr.net

我对
Vue.js
相当陌生。我做了一些关于
Vue
组件之间通信的简单练习。但我仍然有一个问题,谁是孩子,谁是父母。例如,我有以下代码:

HTML:

 <body>
    <div id="root" class="component">
  <coupon @applied="onCouponApplied"></coupon>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <link
  rel="stylesheet"
  href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.css"
   />
   <!-- <script src="app.js"></script> -->
   <script src="main.js"></script>
 </body>
 Vue.component("coupon", {
  template: `
 <div>
   <input palceholder="Put your name" @blur="onCouponApplied"/>
 </div>
  `,
 data() {
   return {
     message: ""
   };
},
methods: {
  onCouponApplied() {
    this.$emit("applied");
   }
 }
});

 new Vue({
 el: "#root",
 methods: {
  onCouponApplied() {
    alert("that's work!");
  }
}
});

VUE.JS:

 <body>
    <div id="root" class="component">
  <coupon @applied="onCouponApplied"></coupon>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <link
  rel="stylesheet"
  href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.5/css/bulma.css"
   />
   <!-- <script src="app.js"></script> -->
   <script src="main.js"></script>
 </body>
 Vue.component("coupon", {
  template: `
 <div>
   <input palceholder="Put your name" @blur="onCouponApplied"/>
 </div>
  `,
 data() {
   return {
     message: ""
   };
},
methods: {
  onCouponApplied() {
    this.$emit("applied");
   }
 }
});

 new Vue({
 el: "#root",
 methods: {
  onCouponApplied() {
    alert("that's work!");
  }
}
});
Vue.component(“优惠券”{
模板:`
`,
数据(){
返回{
信息:“
};
},
方法:{
oncouponappliced(){
此项。$emit(“已应用”);
}
}
});
新Vue({
el:“根”,
方法:{
oncouponappliced(){
警惕(“这是工作!”);
}
}
});

所以。。这里有组件
优惠券
新Vue
。我猜
新Vue
是一个家长。但是我试图理解它是如何工作的。有人能简单地向我解释一下它是如何工作的吗?我阅读了
vue.js
文档,但仍然有一个问题:/

所有组件都引用了您提到的。因此,优惠券组件是根div的子组件。父组件是嵌入另一个组件的组件


“UserListView”将有一个嵌入用户组件的列表组件。视图是列表的父级,列表可以是用户组件的父级

您的整个应用程序由组件组成每个Vue应用程序至少有一个组件是父组件(Vue实例)

您制作的其他每个组件都会成为Vue实例的直接或间接子组件。

发件人:

Vue应用程序由使用新创建的根Vue实例组成 Vue,可以选择组织为嵌套的可重用组件树


根div是父级。您正在创建一个新的(
new Vue({
)并将其与id为“root”的div元素(
el:“#root”,
)关联。优惠券组件包含在此div元素中,使其成为子元素