我有以下vuejs过滤器
import Vue from 'vue'
Vue.filter('truncate', function (value) {
return value.substring(0, 10)
})
Run Code Online (Sandbox Code Playgroud)
然后我称之为
<p> {{filename | truncate}} </p>
Run Code Online (Sandbox Code Playgroud)
但我想传递参数0,10对HTML过滤器.有没有办法做到这一点?
Nik*_*aut 26
尝试这样在vuejs过滤器中传递额外值作为参数
var app = new Vue({
el: "#vue-instance",
filters:{
currency: function(value,arg1){
return arg1+value;
}
},
data: {
},
mounted() {
}
})Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.1/vue.js"></script>
<div id="vue-instance">
{{123 | currency('$') }}
</div>Run Code Online (Sandbox Code Playgroud)
文档说:Filter-Argument-Syntax-changed
在你给出的例子中
Vue.filter('truncate', function (value,start,end) {
return value.substring(start, end)
})
var app = new Vue({
el: "#vue-instance",
data: {
},
mounted() {
}
})Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.1/vue.js"></script>
<div id="vue-instance">
{{ 'this is niklesh.raut' | truncate(0,10) }}
</div>Run Code Online (Sandbox Code Playgroud)