Как установить данные из области слота в компонент - PullRequest
0 голосов
/ 14 января 2019

Я новичок в Вуэйсе, у меня проблемы с slot-scope,

<template>
  <some-component>
    <div slot-scope="{someMethod, someData}">
      // the problem is i need someMethod in my current component, not in template
    </div>
  </some-component>
</template>


<script>
export default {
 created() {
   // i need to access someMethod and someData here
   this.someMethod();
 }
}
</script>

Возможно ли это? Каков наилучший способ практики?

1 Ответ

0 голосов
/ 09 июня 2019

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

<host :someMethod='someMethod'>
  <div slot='foo' slot-scope='{someMethod}'>{{someMethod()}}</div>
  </div>
</host>

Или отправьте весь компонент хосту слота, и хост отправит его обратно.

<host :me='me'>
  <div slot='foo' slot-scope='{me}'>{{me.someMethod()}}</div>
  </div>
</host>

<script>
computed:{
  me(){ return this;
  }
}
</script>
...