Per*_*erp 5 vue.js vue-component vuejs2
我不想对道具进行硬编码,而是希望将任意数量和类型的道具从父母传递给孙子。
我试过这个:
<FileListRenderless v-bind="$props" v-on="$listeners">
<!-- <FileListRenderless :attachments="attachments" :isEditMode="isEditMode" :type="type"> -->
Run Code Online (Sandbox Code Playgroud)
效果很好,但我仍然必须在子组件的 props 对象中定义它们。如何也抽象分配给子组件的 props 对象?
如果您不想在子组件中显式定义 props,那么您应该将 props 作为对象传递,如下所示:
<FileListRenderless :my-props="$props" v-on="$listeners">
Run Code Online (Sandbox Code Playgroud)
这会绕过内置的 prop 验证。您可以对侦听器执行相同的操作,只需手动将它们附加到组件安装上。但是,如果您需要这样做,我建议您重新考虑您的设计。如果您有大量可能的 props,那么您可能需要找到一种方法来抽象某些逻辑、制作工厂组件、使用指令或使用 mixin。Vue 工具包中有很多工具。
| 归档时间: |
|
| 查看次数: |
7110 次 |
| 最近记录: |