在页面中重复使用相同组件(具有相同道具)的最佳方法

时间:2018-12-31 19:46:50

标签: javascript vue.js

我正在使用vue-cli3。在main.js中注册了全局模式组件:

Vue.component('Modal', Modal)
Vue.component('Feedback', Feedback)

然后我在每个页面中使用了这些组件:

<Modal
  @close="closeModal"
  title="Feedback form"
  :visible="isModalVisible"
  :isActive="isActive"
>
  <template slot="body">
    <Feedback
      :clearValues="clear"
      @close="closeModal"
      @loader="toggleLoader($event)"
    />
  </template>
</Modal>

并包括带有所有必需方法的mixins。现在我只是在每页上重复相同的组件(具有相同的道具)。我觉得这与DRY模式不符。同样,也没有办法在模板中包含模板(就像在角度中一样)。在每个页面上重用我的模式组件的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以将具有所需方法,属性等的内容提取到FeedbackModal中,然后跨页面使用该新组件。此外,在Vue CLI 3中,如果使用ES import/export语句,则无需全局注册组件。