Как передать данные в компоненты в vue.js? - PullRequest
0 голосов
/ 17 октября 2018

У меня есть это

<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

Спасибо

Ответы [ 2 ]

0 голосов
/ 17 октября 2018

Вы делаете вещи в основном правильно, вам просто нужно передать свои данные в свой реквизит, используя v-bind:

<ti-button v-bind:name="name"></ti-button>

Статические значения можно передавать без v-bind, но для таких динамических значений, как выпытаясь пройти, вам нужно привязать опору. Ознакомьтесь с документацией по статическим / динамическим реквизитам для получения дополнительной информации.

А вот рабочая демонстрация: https://codepen.io/egerrard/pen/qJpzMQ

0 голосов
/ 17 октября 2018

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: Вы имеете в виду, что этого не видите?enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...