ion-text-wrap 在 ion-item 和 ion-row 中不起作用
ion-text-wrap not working inside ion-item and ion-row
在我的 Ionic 5 应用程序中,当我在 ion-item
或 ion-row
和 class ion-text-wrap
中使用文本时,文本不是 wapprd。我正在尝试以下方法。
<ion-item>
<ion-label class="ion-text-wrap">
{{myText}}
</ion-label>
</ion-item>
<ion-item class="ion-text-wrap">
{{myText}}
</ion-item>
只使用 text-wrap
,而不是 class="ion-text-wrap"
<ion-item>
<ion-label text-wrap>
{{myText}}
</ion-label>
</ion-item>
这是我将在 ionic5 中采用 Angular 的方法:创建一个过滤器(管道)。这个只会尝试查找 URL 并缩短长的,但它也可以很容易地扩展到查找长词。
你的过滤管(准备文本-pipe.pipe)
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'prepText'
})
export class PrepTextPipe implements PipeTransform {
transform(textInput: string): any {
if (textInput.trim()=="") {
return;
}
// this is just going to find long URLs, surround them with <a href's and shorten them
let urlRegex =/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return text.replace(urlRegex, function(url) {
if (url.length > 10) {
if (url.indexOf("://")!==-1) short_url =url.split("://")[1].substr(0,8) + "..." ;
else short_url =url.substr(0,8) + "..." ;
} else short_url = url;
return '<a href="' + url + '" target="_blank">' + short_url + '</a>';
});
}
}
你的component.ts
import { PrepTextPipe } from '../shared/pipes/prep-text-pipe.pipe';
你的component.html
请注意,因为我们要返回 HTML,所以我使用的是 [innerHTML]
而不是 {{}}
<ion-item class="ion-text-wrap" [innerHTML]="myText | prepText">
</ion-item>
在我的 Ionic 5 应用程序中,当我在 ion-item
或 ion-row
和 class ion-text-wrap
中使用文本时,文本不是 wapprd。我正在尝试以下方法。
<ion-item>
<ion-label class="ion-text-wrap">
{{myText}}
</ion-label>
</ion-item>
<ion-item class="ion-text-wrap">
{{myText}}
</ion-item>
只使用 text-wrap
,而不是 class="ion-text-wrap"
<ion-item>
<ion-label text-wrap>
{{myText}}
</ion-label>
</ion-item>
这是我将在 ionic5 中采用 Angular 的方法:创建一个过滤器(管道)。这个只会尝试查找 URL 并缩短长的,但它也可以很容易地扩展到查找长词。
你的过滤管(准备文本-pipe.pipe)
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({
name: 'prepText'
})
export class PrepTextPipe implements PipeTransform {
transform(textInput: string): any {
if (textInput.trim()=="") {
return;
}
// this is just going to find long URLs, surround them with <a href's and shorten them
let urlRegex =/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return text.replace(urlRegex, function(url) {
if (url.length > 10) {
if (url.indexOf("://")!==-1) short_url =url.split("://")[1].substr(0,8) + "..." ;
else short_url =url.substr(0,8) + "..." ;
} else short_url = url;
return '<a href="' + url + '" target="_blank">' + short_url + '</a>';
});
}
}
你的component.ts
import { PrepTextPipe } from '../shared/pipes/prep-text-pipe.pipe';
你的component.html
请注意,因为我们要返回 HTML,所以我使用的是 [innerHTML]
而不是 {{}}
<ion-item class="ion-text-wrap" [innerHTML]="myText | prepText">
</ion-item>