Cómo pasar un valor de cadena a un componente en angular2


Me gustaría pasar un valor de cadena a un componente en angular2, pero no funciona con el enlace predeterminado. Estoy pensando en algo similar a esto.:

<component [inputField]="string"></component>

Desafortunadamente, solo se permiten expresiones en el lado derecho de la asignación. ¿Hay alguna manera de hacer esto?

Author: Andras Hatvani, 2016-03-25

3 answers

Los literales de cadena se pueden pasar de diferentes maneras:

<component inputField="string"></component>
<component [inputField]="'string'"></component>
<component inputField="{{'string'}}"></component>
 95
Author: Günter Zöchbauer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-11 14:45:54

Puede pasar una cadena encerrándola entre comillas

<component [inputField]="'string'"></component>
 43
Author: Eric Martinez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-25 12:33:37

Para incluir una comilla simple (y posiblemente otros caracteres HTML especiales) en el literal de cadena, la primera opción funciona mientras que aquellos que usan comillas simples para envolver el literal fallan con errores de análisis. Por ejemplo:

<component inputField="John&#39;s Value"></component>

Mostrará correctamente "El valor de Juan".

 3
Author: Glenn,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-15 00:24:12