2017-04-26 56 views
3

我试图做一些数据转换为小写(送花儿给人小写)Vuejs 2:如何使数据小写

我制作和搜索输入,如:

<template id="search"> 
    <div> 
     <input type="text" v-model="search"> 
     <li v-show="'hello'.includes(search) && search !== ''">Hello</li> 
    </div> 
</template> 

Vuejs:(组件)

Vue.component('search', { 
    template : '#search', 
    data: function(){return{ 
     search : '', 
    }} 
}); 

我试过watch,但我不想输入显示小写输入

watch: { 
    'search' : function(v) { 
     this.search = v.toLowerCase().trim(); 
    } 
} 

演示时:https://jsfiddle.net/rgr2vnjp/


而且我不想搜索列表v-show像添加.toLowerCase()

<li v-show="'hello'.includes(search.toLowerCase()) && search !== ''">Hello</li> 

任何诡计?,我搜索,许多人告诉只是使用上Vuejs filter但不退出2

游乐场:https://jsfiddle.net/zufo5mhq/(尝试键入^h

PS:好/更好的代码,我想也知道,由于

回答

7

在Vue.js 2.0,计算性能,可用于替换过滤器:

computed: { 
    searchInLowerCase() { 
    return this.search.toLowerCase().trim(); 
    } 
} 

现在你可以简单地使用searchInLowerCase在您的模板:

<li v-show="'hello'.includes(searchInLowerCase) && search !== ''">Hello</li> 
+0

Ahaaa!非常感谢 – l2aelba

0

你甚至可以做到这一点

{{tag.title.toLowerCase().trim()}}