Передача параметра в Vue.js - PullRequest
0 голосов
/ 15 ноября 2018

Я пытаюсь передать параметр в моем проекте Vue.js, но безуспешно.Цель состоит в том, чтобы при выборе пользователя из списка он направлялся к профилю этого конкретного пользователя как localhost: 61601 / Profile / "lastName"

Вот мой метод, когда я нажимаю рядом с именем пользователя:

 editItem(lastName) {
    this.$router.push({ name: 'GetInquiry', params: { lastName: lastName } })
    this.$http.get('http://localhost:61601/api/' + 'GetInquiry/' + { lastName : lastName })
  },
  async GetAllInquiries() {
    this.loading = true

    try {
      this.records = await api.GetAllInquiries()
    } finally {
      this.loading = false
    }
  },

На данный момент я просто передаю lastName, но, в конце концов, ему будет передан уникальный идентификатор.

Вот тестовая страница профиля, здесь я просто пытаюсь получитьчто информация пользователей для отображения, чтобы проверить страницу.Так что, если все работает, пользователи firstName должны отобразить:

<template>
 <div class="Profile">
  <div class="container">
   <div class="row">
    <template slot="items" slot-scope="records">
      <h1> Student Name: {{ records.items.firstName }}</h1>
    </template>
  </div>
</div>

 <script>
   import api from '../../store/api.js'

export default {
data() {
  return {
    records: {},
  }
},

async created() {
  this.GetInquiriesByUser()
},
methods: {
  async GetInquiriesByUser() {
    this.loading = true

    try {
      this.records = await api.GetInquiriesByUser()
    } finally {
      this.loading = false
    }
  },
}
}
</script> 

Вот мои маршруты. Js

{
path: '/Profile/:lastName',
name: 'GetInquiry',
component: Profile
}

Когда я открываю инструменты разработчика наchrome, я получаю localhost: 61601 / api / GetInquiry / [object% 20Object]

Я использую .netcore api для бэкэнда, который получает ожидаемые результаты, просто не могу заставить его подняться на моем интерфейсе.Если кто-то может помочь мне и указать мне правильное направление, это было бы здорово.Пожалуйста, дайте мне знать, если кому-то нужна более подробная информация.

1 Ответ

0 голосов
/ 15 ноября 2018

Вы передаете объект в vue-resource вместо значения.

Просто передайте непосредственно фамилию в маршрут, и она будет работать нормально.

this.$http.get(`http://localhost:61601/api/GetInquiry/${lastName}`);
...