首字母大写 AngularJS
Capitalize initial letter with AngularJS
我知道 AngularJS 中有一个大写过滤器,但我想创建一个函数来仅将全名的首字母大写,但有一些限制。介词 ("da, de, di, do, du, das, des, dis, dos, dus") 应小写。
例如:
- 何塞·达席尔瓦 -> 何塞·达席尔瓦
- 若昂·多斯桑托斯 -> 若昂·多斯桑托斯
有没有有效的方法来做到这一点?
您可以为此创建自定义过滤器:
.filter("name", function() {
var ignoreWords = ["da", "de", "di", "do", "du", "das", "des", "dis", "dos", "dus"]
return function(name) {
return name.split(" ").map(function(word) {
if (ignoreWords.indexOf(word.toLowerCase()) > -1) {
return word[0].toLowerCase() + word.substr(1);
} else {
return word[0].toUpperCase() + word.substr(1);
}
}).join(" ")
}
});
我知道 AngularJS 中有一个大写过滤器,但我想创建一个函数来仅将全名的首字母大写,但有一些限制。介词 ("da, de, di, do, du, das, des, dis, dos, dus") 应小写。
例如:
- 何塞·达席尔瓦 -> 何塞·达席尔瓦
- 若昂·多斯桑托斯 -> 若昂·多斯桑托斯
有没有有效的方法来做到这一点?
您可以为此创建自定义过滤器:
.filter("name", function() {
var ignoreWords = ["da", "de", "di", "do", "du", "das", "des", "dis", "dos", "dus"]
return function(name) {
return name.split(" ").map(function(word) {
if (ignoreWords.indexOf(word.toLowerCase()) > -1) {
return word[0].toLowerCase() + word.substr(1);
} else {
return word[0].toUpperCase() + word.substr(1);
}
}).join(" ")
}
});