2017-10-09 114 views

回答

0

这里是我的回答小提琴:ANSWER-DEMO

<div id="app"> 
    <div v-if="username.length<8">Welcome, {{ username }}</div> 
    <div v-if="username.length>=8">Welcome, {{ username.substring(0,8)+".." }}</div> 
</div> 
1

你想要的检查,如果字符串> 8个字符,并在你的模板计算的属性修改和使用计算的属性。

new Vue({ 
    el: '#app', 
    data: { 
    username: 'AVERYLONGGGNAMMEEE' 
    }, 
    computed: { 
    usernameLimited(){ 
     if (this.username.length > 8) { 
     return this.username.substring(0,8) + '...' 
     } else { 
     return this.username 
     } 
    } 
    } 
}) 
1

您可以使用substr()方法,以获取名称的一部分:

var namePart = this.username.substr(0, 8) + '..'; 

或者你可以使用CSS overflow: hidden;text-overflow: ellipsis;属性:demo

1

您可以通过使用计算性能做到这一点。

new Vue({ 
el: '#app', 
data: { 
    username: 'AVERYLONGGGNAMMEEE' 
}, 

computed: { 
    strippedUsername: function(){ 
     if(this.username.length > 5) { 
     return this.username.slice(0,4); 
     } 
     return this.username; 
    } 
} 


}); 
0

如果你能做到这一点利用CSS,你应该。

white-space: nowrap; 
overflow: hidden; 
text-overflow: ellipsis; 
相关问题