• Как исправить ошибку при импорте родительского компонента в дочерний Vue.js?

    @VasilyBykov
    Наименование компонентов согласно спецификации vue name casing

    TempComponent.vue
    <template>
      <div>
        temp-component
        <hr />
        <RowComponent :rows="3" />
      </div>
    </template>
    
    <script>
    import RowComponent from "./RowComponent";
    
    export default {
      name: "temp-component",
      components: {
        RowComponent
      }
    };
    </script>


    RowComponent.vue
    <template>
      <div>
        Row
        <col-component :rows="rows - 1" />
      </div>
    </template>
    
    <script>
    import ColComponent from "./ColComponent";
    
    export default {
      name: "RowComponent",
      props: {
        rows: {
          required: true,
          type: Number
        }
      },
      components: {
        ColComponent
      }
    };
    </script>


    ColComponent.vue
    <template>
      <div>
        Col, next rows count: {{ rows }}
        <template v-if="rows > 0">
          <hr />
          <row-component :rows="rows" />
        </template>
      </div>
    </template>
    
    <script>
    import RowComponent from "./RowComponent";
    
    export default {
      name: "ColComponent",
      props: {
        rows: {
          required: true,
          type: Number
        }
      },
      components: {
        RowComponent
      }
    };
    </script>


    Результат
    temp-component
    ------------------------------
    Row
    Col, next rows count: 2
    ------------------------------
    Row
    Col, next rows count: 1
    Row
    ------------------------------
    Col, next rows count: 0
  • Что не так с моим event.bus в vue?

    @VasilyBykov
    Если нельзя передать через props, то есть 2 варианта:
    1. Записать во Vuex и во втором компоненте брать из vuex
    2. Делать emit во втором компоненте, передавать колбэк, который будет принимать data и устанавливать showChoose во втором компоненте. В первом компоненте ловить событие и вызывать колбэк с showChoose.