【问题标题】:Pass parameters via GET to return filter通过 GET 传递参数以返回过滤器
【发布时间】:2021-01-06 20:13:23
【问题描述】:

我想通过 GET 返回一个数据查询,以根据 v-model 中选择的内容返回值。 我想知道如何从输入中获取 v-model 值并请求通过参数获取

我的过滤器(组件已经根据我的选择返回对象作为您的 id)

  <div class="row gutter-sm">
    <div class="col-md-12">
       <q-card class="full-width bg-white q-pa-md q-card-flex">
            <div class="col-md-2">            
              <situacao-select multiple v-model="situacao" :stackLabel="'Situação OS'" style="height:50px;" :clearable="true" />            
            </div>
            <div class="col-md-2">
              <input-holder label="Help Desk" style="height:50px;">
                  <pessoa-funcao-select :funcao="'Help Desk'" :clearable="true" />
              </input-holder>
            </div>
            <div class="col-md-2">
              <input-holder label="Supervisor" style="height:50px;">
                  <pessoa-funcao-select :funcao="'Supervisor'" :clearable="true" />
              </input-holder>
            </div>
                <div class="col-auto">
                    <q-btn
                      color="primary"
                      style="margin-left: auto; margin-right: auto;"
                      @click="search = false"
                    >FILTER</q-btn>
                </div>                                        
            </div>                   
       </q-card>

请求API(我知道错了,我想知道如何根据GET请求的参数来请求)

     mounted() {
        this.refresh()
 },
 methods: {
      refresh () {
         this.$axios.get()
         
          this.$axios.get("/Operacional/GetRelatorio").then(res => { 
            this.prazos = res.data
            this.$refs.chart1.updateSeries([{
                name: 'NO PRAZO',
                data: [this.prazos.noPrazo, this.prazos.emDia, this.prazos.atrasadas]
             }])
          })
          this.$axios.get("/Operacional/GetAprovadas").then(res => {
            this.os = res.data
          })
          this.$axios.get("/Operacional/GetPendenciasOS").then(res => {
            this.os = res.data
            this.$refs.chart4.updateSeries([{
                name: 'EM DIA',
                data: [ this.os.emdiaPendencia, this.os.emdiaSPendencia],
              },{
                name: 'ATRASADAS',
                data: [ this.os.atrasadasPendencia, this.os.atrasadasSPendencia],
                }
             ])
          })

【问题讨论】:

    标签: javascript vue.js quasar-framework


    【解决方案1】:

    这就是您获得所选值的方式,假设您要使用“situacao”。 并通过 GET 参数将该值传递给您的后端:

    refresh () {
             this.$axios.get()
        
             var selectedSituacao = this.situacao;
             var url = "/Operacional/GetRelatorio?ID=" + selectedSituacao;
    
             this.$axios.get(url).then(res => { .... })
    
             // or you could do this:
             var axiosParams = {
                 params: {
                    ID: selectedSituacao
                 }
             }
             this.$axios.get("/Operacional/GetRelatorio", axiosParams).then(res => { .... })
    

    编辑:根据要求将 url 获取参数 situacao 更新为 ID。

    【讨论】:

    • 在这种情况下,我要采用的参数是 ID。我是否必须为每个模型制作一个,还是有一种方法可以为每个人制作?
    • 我不明白你的问题。您想提供 ID 作为 GET 参数还是想使用 vue 实例中的 id?
    • ID 作为 GET 参数
    • 我已经更新了示例,以反映您将如何将所选值作为id 传递
    • 不需要在url后面加上“+ qs.stringify”吗?另一件事,当我声明“this.situacao”时,我是否已经可以访问该组件的 v-model 了?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多