The simplest solution I found for simply limiting the string length was {{ modal.title | slice:0:20 }}
, and then borrowing from @Govan above you can use {{ modal.title.length > 20 ? '...' : ''}}
to add the suspension points if the string is longer than 20, so the final result is simply:
{{ modal.title | slice:0:20 }}{{ modal.title.length > 20 ? '...' : ''}}
https://angular.io/docs/ts/latest/api/common/index/SlicePipe-pipe.html