I've upgraded to Vue.js 2.0.5 and orderBy in a v-for seems to not be working anymore
<li v-for="c in rooms | orderBy 'last_iteraction'">
outputs
- invalid expression: v-for="c in rooms | orderBy 'last_iteraction'"
anyone knows how to solve?
orderBy Filter is removed in vue.js v-2.
Quoted from vue.js docs
Instead of:
<p v-for="user in users | orderBy 'name'">{{ user.name }}</p>
Use lodash’s orderBy (or possibly sortBy) in a computed property:
<p v-for="user in orderedUsers">{{ user.name }}</p>
computed: { orderedUsers: function () { return _.orderBy(this.users, 'name') } }
Reference:
https://vuejs.org/v2/guide/migration.html#Replacing-the-orderBy-Filter
You can also use vue2 filters package.
npm install vue2-filters
import Vue from 'vue' import Vue2Filters from 'vue2-filters' Vue.use(Vue2Filters)
import Vue2Filters from 'vue2-filters' export default { ... mixins: [Vue2Filters.mixin], ... }
<li v-for="c in orderBy(rooms,'last_iteraction')">
There is a list of predefined filters.check it out.
Reference:
https://github.com/freearhey/vue2-filters
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With