Daf*_*fik 5 vue.js vuejs2 bootstrap-vue
当我开始写作时,我想输入大写第一个字母。
<b-form-input v-model="formSurname" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
Run Code Online (Sandbox Code Playgroud)
我也有这个过滤器。但v-model="formSurname | capitalize"不起作用我尝试过:value="formSurname | capitalize"但它也不起作用
Vue.filter("capitalize", function (value) {
if (!value)
return '';
value = value.toString();
return value.charAt(0).toUpperCase() + value.slice(1);
});
Run Code Online (Sandbox Code Playgroud)
如何实时输入更改我的第一个字母?
如果您需要存储大写的值,请使用带有 set 和 get 方法的计算属性:
computed: {
formSurnameCapital: {
get: function () {
return this.formSurname;
},
// setter
set: function (newSurname) {
if(newSurname.length < 1) {this.formSurname = ''; return}
this.formSurname = newSurname.replace(/^./, newSurname[0].toUpperCase());
}
}
}
Run Code Online (Sandbox Code Playgroud)
在你的模板中:
<b-form-input v-model="formSurnameCapital" id="Surname" name="Surname" placeholder="Surname" type="text" maxlength="50" required> </b-form-input>
Run Code Online (Sandbox Code Playgroud)
否则,如果只是将其显示为大写,您可以简单地使用 css :
.toCapitalFirst {
text-transform: capitalize;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17153 次 |
| 最近记录: |