Comments (7)
@tmikaeld Can you please explain more about this?
from vue-table.
If i set:
:sort-order="[{ field: 'id', direction: '' }]"
or:
:sort-order="[{ field: 'id' }]"
I will get ?id=|
While in the API I'm consuming, sort order is defined with -id
for descending and id
for ascending. Not sure how to accomplish that without changing the library code.
from vue-table.
@tmikaeld OK. I think of something and let you know. May not be tonight though.
from vue-table.
@tmikaeld What I would do is to modify getSortParam() a bit that it will check if there is getSortParam()
method in its parent instance. And if there is, it will call the method (with the sortOrder
as its argument) on the parent instance instead of using the default one.
So, you could effectively override how the sort parameter would be constructed before sending it to the server in the loadData()
.
This way I don't have to introduce another prop.
from vue-table.
This was the best i could come up with without creating a new prop.
With this you just set seperator: '+-'
in the :sort-order prop object.
:sort-order="[{ field: 'id', direction: 'desc', seperator: '+-' }]"
The change in vue-table.js, from line 661:
getSortParam: function getSortParam() {
if (!this.sortOrder || this.sortOrder.field == '') {
return '';
}
var result = '';
for (var i = 0; i < this.sortOrder.length; i++) {
var fieldName = typeof this.sortOrder[i].sortField === 'undefined' ? this.sortOrder[i].field : this.sortOrder[i].sortField;
console.log(this.sortOrder[i].seperator)
//Support for -fieldName fieldName as ascending/descending sort order instead of fieldName|desc fieldName|asc
if(!this.sortOrder[i].seperator == '+-') {
result += fieldName + '|' + this.sortOrder[i].direction + (i + 1 < this.sortOrder.length ? ',' : '');
} else {
if(this.sortOrder[i].direction == 'asc') {
result += fieldName.replace('-','') + (i + 1 < this.sortOrder.length ? ',' : '');
} else {
result += '-'+fieldName.replace('-','') + (i + 1 < this.sortOrder.length ? ',' : '');
}
}
}
return result;
},
Let me know if it's good enough to include to the library.
from vue-table.
@tmikaeld FYI. No new prop is needed. I just don't have time for the documentation right now, sorry.
this is now in develop branch.
this is the example for Semantic UI.
And this is for Bootstrap.
from vue-table.
That's certainly more flexible, thanks!
from vue-table.
Related Issues (20)
- Search with a extra data. HOT 6
- problem with scroll HOT 1
- Demo does not work in chrome HOT 4
- Error compiling template!!!! HELP ME!!! HOT 6
- Row totals HOT 3
- Is this an expected behavior of field callback?
- Can't style my grid to fit the content or a specific column HOT 2
- How use it for laravel HOT 1
- cell class cb
- Is it possible to add/del row dynamically? HOT 1
- unable to filter dates HOT 3
- No Data Available HOT 1
- Can I apply paging on client side? HOT 2
- Loading table with pre settings like sorting and page
- The word prev is spelled with the word next by mistake
- Pagination data not being transpile by polyfill
- Can i add `data-xxx` attribute to table head field? HOT 1
- http-fetch not showing data
- how to make columns resizable?
- How to use Cursor-Pagination
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vue-table.