Я пытался как получить параметры Vue Router в Vuex?, но не похоже на работу.

Добытчик :

getAssetById: state => id => {
      return state.assets.find(asset => asset.id === id)
    }

Составная часть:

<div class="card padding-35 box-shadow ">
        //this on is OK
        {{ assetId }}

        {{ asset }}
      </div>

 computed: {
    assetId() {
      return this.$route.params.id
    },
    asset() {
      //this doesn't work
      return this.$store.getters.getAssetById(assetId)
    }
    asset() {
      //this work
      return this.$store.getters.getAssetById(1)
    }
  }
0
Gabor 25 Апр 2020 в 23:17

2 ответа

Думаю, вам нужно изменить возврат на this.$store.getters.getAssetById(this.assetId)

0
RBowen 25 Апр 2020 в 20:25

Надо было подумать об этом раньше, преобразование в int решило проблему:

assetId() {
      return parseInt(this.$route.params.id)
    },
0
Gabor 25 Апр 2020 в 20:32