Как решить AngularDart «Игнорирование <style>, так как этот элемент небезопасно связывать в шаблоне без надлежащей очистки» - PullRequest
0 голосов
/ 09 января 2019

Мой template.html содержит множество html и встроенных css, используя все вместе. Это потому, что в конечном итоге он предназначен для электронной почты.

Angular не любит этого и выдает мне следующее предупреждение:

Игнорируется, так как этот элемент небезопасно связывать в шаблоне без надлежащей очистки. Это может стать ошибкой в ​​будущих версиях AngularDart. Подробнее см. https://webdev.dartlang.org/angular/guide/security.

Я вижу в документации, которую он рекомендует использовать "bypassSecurityTrustHtml" или аналогичный, однако это включает в себя что-то вроде этого:

style = sanitizer.bypassSecurityTrustHtml('html code with css styling');

И я не могу вставить огромный кусок кода html / css с новыми строками и тому подобным в одну строку.

Так что я могу сделать, чтобы Angular игнорировал мои теги стиля?

Ответы [ 2 ]

0 голосов
/ 09 января 2019

Ничто не мешает вам передавать многострочные строки вместо однострочных, потому что нет никакой разницы, за исключением того, что многострочные строки содержат \n или \r\n.

Dart предоставляет несколько способов написания многострочных строк.

'1st line\n2nd line' 

'1st line\n' + '2nd line'

'1st line' 
'2nd line'

'''
1st line
2nd line
'''

var buffer = StringBuffer();
buffer.writeln('1st line');
buffer.write('2nd line');
buffer.toString();
0 голосов
/ 09 января 2019

В Dart вы можете использовать '''string on multiple lines''', чтобы вставить свой html / style / css код и вставить его в функцию bypassSecurityTrustHtml.

...