Как дополнительно выбрать фильтр из URL-адреса vuejs filtering - PullRequest
1 голос
/ 11 октября 2019

Я использую vuejs и vuex для создания своего проекта и хочу дополнительно выбрать фильтр из этого URL-фильтра. Например: когда я хочу выбрать только фильтр города и автомобиля, будут только URL города и автомобиля (...? City_id = 2 & car__car_model = 11), но теперь, когда я отправляю идентификаторы для этого действия, я должен отправитьидентификаторы, которые я хочу, и другие как пустые (''), а затем вывод ...? city_id = 2 & sub_category = & sub_category = & car__car_model = & limit = & offset =. Вот мой код JavaScript:

async filteredServices ({ commit, dispatch }, cityId = '', subCat = '', car = '', limit = '', offset = '') {
  const url = 'test/service/' + '?city_id=' + cityId + '&sub_category=' + subCat + '&car__car_model=' + car + '&limit=' + limit + '&offset=' + offset
  console.log('url', url)
  const response = await dispatch('api/test/get', { url }, { root: true })
  if (response.status === 200) {
    commit('setCompanyService', response.data.results)
    console.log('setCompanyService', response.data.results)
  }
},

Вот мой код HTML-скрипта:

    applyFilter () {
     this.filteredServices(this.selectedCityId)
    }

И я также пытаюсь использовать вот так:

 async filteredServices ({ commit, dispatch }, form) {
  const url = 'test/service/' + '?city_id=' + form.cityId + '&sub_category=' + form.subCat + '&car__car_model=' + form.car + '&limit=' + form.limit + '&offset=' + form.offset
  const response = await dispatch('api/test/get', { url }, { root: true })
  if (response.status === 200) {
    commit('setCompanyService', response.data.results)
    console.log('setCompanyService', response.data.results)
  }
},

и HTML-кодscript:

applyFilter () {
  this.filteredServices({
    cityId: this.selectedCityId,
    car: '',
    subCat: 3360,
    limit: '',
    offset: ''
  })
}

И главный вопрос: как очистить фильтрацию записи url с возможностью выбора фильтра, который я хочу в действиях vuejs vuex.

...