首页 > 解决方案 > 如何将数据传递给 vue.js 中的组件?

问题描述

我有这个

<template id="vButton">
    <button v-bind:title="name">{{name}}</button>
</template>

<div id="app">
    <ti-button></ti-button>
</div>

js

    Vue.component('ti-button', {
        props: ['name'],
        template: '#vButton'
    });

    var vm2 = new Vue({
        el: '#app',
        data: {
            name : 'hi'
        }
    });

我希望按钮具有 innerText 和 title 属性来表示“嗨”。但事实并非如此。有谁知道为什么?

参考:https ://vuejs.org/v2/guide/components.html

谢谢

标签: vue.jsvuejs2

解决方案


Vue.component('ti-button', {
  props: ['name'],
  template: '#vButton'
});

var vm2 = new Vue({
  el: '#app',
  data: {
    name: 'hi'
  }
});
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<script type="text/x-template" id="vButton">
  <div>
    <button>{{name}}</button>
    <button>{{$root.name}}</button>
  </div>
</script>

<div id="app">
  <ti-button name="first_button"></ti-button>
</div>

UPD:你的意思是你没有看到这个? 在此处输入图像描述


推荐阅读