2017-12-28 37 views
1

두 개의 필터가있는 기본 서버 쪽 vue-tables-2을 설정하려고합니다. 하나는 드롭 다운이고 다른 하나는 검색 필드입니다. requestFunction() 내에서 두 필터 중 어떤 필터를 적용했는지 감지하는 데 문제가있어서 서버에 요청을 보낼 수 있습니다. 현재, 나는 필터가 적용될 때/입력이 변경 될 때 입력 필터 이름과 값을 로그에 기록하려고한다.어떤 필터가 적용되었는지 Vue-tables-2가 감지되었습니다.

JSFiddle :

https://jsfiddle.net/kbpq5vb3/39/

HTML

<h1 class="vue-title">Vue Tables 2 Demo</h1> 

<div id="app"> 
    <v-server-table url="https://jsonplaceholder.typicode.com/users" :columns="columns" :options="options"></v-server-table> 
</div> 

VueTable :

Vue.use(VueTables.ServerTable); 

new Vue({ 
    el: "#people", 
    data: { 
    columns: ['name', 'username'], 
    options: { 
     requestAdapter(data) { 
      console.log(data.query); // detect which filter was applied/which input changed 
     }, 
     responseAdapter(resp) { 
      return { 
      data: resp, 
      count: resp.length 
      } 
     }, 
     filterByColumn: true, 
     filterable: ['name', 'username'], 
     listColumns: { 
      name: [{ 
      id: 'ervin', 
      text: 'Ervin' 
      }, { 
      id: 'chelsey', 
      text: 'Chelsey' 
      }] 
     } 
    } 
    } 
}); 
+0

[documentation] (https://github.com/matfish2/vue-tables-2#events)에 따르면 필터가 변경되면'vue-tables.filter/tableName/FILTER' *가 실행됩니다. * – Derek

+0

오른쪽의 "이벤트"탭 아래 Vue 개발자 도구에서 이벤트를 볼 수 있어야합니다. – Derek

+0

@Derek 감사합니다. 네,하지만 그것을 보았습니다. 요청 어댑터 내에서 해당 이벤트에 대한 액세스가 필요할 때 구현하지 못했습니다. 제대로 사용하는 방법에 대한 예제가 없으므로 문서가 좋지 않습니다. 그게 어떻게 작동하는지 이해하니? 바이올린을 기본 예제로 업데이트 할 수 있습니까? – AnchovyLegend

답변

1

vue-tables-2 documentation에 따르면

vue-tables.filter/tableName/FILTER 필터가 변경되면 꺼집니다.

조금 더 깊이 검토 한 결과, 그것은 정말 이벤트를 수신하는 것만 큼 쉽습니다 :

enter image description here

뷰 개발자 도구 정말 진단 물건이 유형을 쉽게. 이제 맞춤 이벤트를 듣고 싶습니다. Vue documentation에서이를 수행하는 방법을 배울 수 있습니다. 이 도움이 https://jsfiddle.net/kbpq5vb3/55/

희망 :

마지막으로, 여기 당신이이 이벤트를 수신하는 방법을 보여줍니다 작업 바이올린입니다!

+0

도움 덕분에 데릭. 불행히도,이 모든 것이 어떻게 문서화 된 것에서 나왔는지는 분명하지 않습니다. 요청 어댑터 내에서 필터 키와 값에 대한 액세스가 필요하며 문서에는 구현 예가 하나도 없습니다. – AnchovyLegend

+0

@AnchovyLegend 나에게 몇 가지를 주자. 나는 바이올린으로 당신을 보여줄 것이다 – Derek

+0

@AnchovyLegend는 당신을위한 좋은 출발점이다. https://jsfiddle.net/kbpq5vb3/55/ – Derek