Как передать mixins в качестве реквизита и использовать их в дочерних компонентах, используя Vue.js - PullRequest
0 голосов
/ 30 сентября 2018

У меня есть родительский компонент, который содержит два дочерних компонента с именами add и edit, эти компоненты имеют некоторые общие свойства, и я хочу использовать mixins, для этого я добавляю объект с именем mix к родительскому компоненту.объект данных, и я передаю его как props дочерним компонентам следующим образом

родительский компонент:

  <template>
      <div id="app">
       <add :mixin="mix" operation="add"></add>
        ...
        <edit :mixin="mix"  operation="edit"></edit>
     </div>
  </template>  

  <script>
   export default {
        name: "App",
       data(){
          return{
          /****/
            mix:{
              data() {
                  return {
                     user: { name: "", email: "" },
                     users: []
                };
              },
              methods: {
                add() {
                   this.users.push(this.user);
                     },

                    }
                  }
                }
           /*****/
               };
              },
     components: {
         add,edit
    }
     };
   </script>

Я мог бы получить этот объект (mix) в моем дочернем компоненте, нокак я могу присвоить его свойству mixins?

1 Ответ

0 голосов
/ 30 сентября 2018

Низко висящим плодом для решения этой проблемы будет просто рефакторинг вашего кода и запись миксина в отдельный файл.Затем вы можете импортировать объект mixin в оба ваших компонента и назначить его свойству mixins.

...