javascript - 管道放置下划线底部字母角度
问题描述
我想得到第一个字母并在底部加上下划线。获取第一个字母和转换的代码
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'underlinePrimeiraLetra'
})
export class underlinePrimeiraLetraPipe implements PipeTransform {
transform(value: string, args: any[]): string {
if (value === null) return;
return value.charAt(0).toUpperCase() + value.slice(1);
}
}
但是要在字母下划线,我该怎么办?
如果我这样做
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'underlinePrimeiraLetra'
})
export class underlinePrimeiraLetraPipe implements PipeTransform {
transform(value: string, args: any[]): string {
if (value === null) return;
return "<u>" + value.charAt(0).toUpperCase() + "</u>" + value.slice(1);
}
}
显示不正确:
解决方案
在 HTML 中
<p *ngFor="let name of names" [innerHTML]="name | underlinePrimeiraLetra"></p>
在管道文件中
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'underlinePrimeiraLetra'
})
export class underlinePrimeiraLetraPipe implements PipeTransform {
transform(value: string, args: any[]): string {
if (value === null) return;
return "<u>" + value.charAt(0).toUpperCase() + "</u>" + value.slice(1);
}
}
更新:
即使answer is being a little bit wrong and too complicated for the need
像@trichetriche所说的那样,我也想让有趣的人知道如何清理 HTML
下面是经过消毒的代码
import { Pipe, PipeTransform, SecurityContext } from '@angular/core';
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
@Pipe({
name: 'underlinePrimeiraLetra'
})
export class underlinePrimeiraLetraPipe implements PipeTransform {
constructor(private _sanitizer: DomSanitizer) {}
transform(value: string, args: any[]): string {
if (value === null) return;
return this._sanitizer.sanitize(SecurityContext.HTML, "<u>" + value.charAt(0).toUpperCase() + "</u>" + value.slice(1));
}
}
我也更新了 Stackblitz
推荐阅读
- sql - Getting distinct result without using the DISTINCT clause
- python-3.x - Python将列转换为日期时间不起作用
- c# - Checking if Generic Type Inherits from Generic Interface
- reactjs - 使用 React Router 访问 Go 后端
- r - Concatenate Rows If Value of Another Column In Next Row Is Empty
- javascript - Uploading Image to Cloudinary Express.js React Axios post request
- c# - 从包含来自 ajax 调用的延迟数据的 URL http 请求流中获取字节
- c# - 在 Doxygen 生成的 HTML 中设置编码文本的样式
- python - 代码从解释器运行,但不在编辑器中
- hibernate - spring data jpa @EntityGraph 方法与 Collection 结果抛出 BeanCreationException