Как переместить слот и область действия слота в правило vue 3 с v-образным слотом

#vue.js #vuejs2 #vuejs3 #ant-design-vue

Вопрос:

Я получаю эту ошибку, когда использую таблицу Ant-дизайна для VueJS

 <template slot="name" slot-scope="name"> {{ name.first }} {{ name.last }} </template>
 

После того, как я перешел на правила Vue 3, по-прежнему ничего не показывалось:

 <template v-slot:name v-slot="name"> {{ name.first }} {{ name.last }} </template>
 

введите описание изображения здесь

Ответ №1:

Ваша разметка ниже не работает, потому что она помечает шаблон двумя именами слотов; т. Е. name слот (в v-slot:name ), а также default слот (в v-slot="name" ):

 <template v-slot:name v-slot="name"> {{ name.first }} {{ name.last }} </template>
          ^^^^^^^^^^^ ^^^^^^^^^^^^^
 

Вот правильное решение:

 <template v-slot:name="name"> {{ name.first }} {{ name.last }} </template>
 

Ответ №2:

В соответствии с этой документацией вам следует изменить slot v-slot

Комментарии:

1. Да, я пытался, но вместо этого получаю ошибку <template v-slot="from"> {{ from.host }} {{ from.addrs }} </template>

2. Какую ошибку вы получаете? Вы можете попробовать изменить v-slot="from" v-slot:from , как указано в документации

3. На самом деле ничего не показывалось, когда я изменил v-slot="from" или v-slot:from в теге <шаблон>