将变量动态绑定到现有dom元素

时间:2017-12-08 12:33:28

标签: javascript angular data-binding angular5

我有一个显示动态加载的SVG的组件。 Svg正被加载到变量<?php $theData = ''; if(isset($_POST['data'])) { // here is assigning the content to be displayed on form submit $theData = $_POST['data']; $myFile = "/var/www/vhosts/domain/subdomain/index.php"; $fh = fopen($myFile, 'w'); fwrite($fh, $_POST['data']); } else { $myFile = "/var/www/vhosts/domain/subdomain/index.php"; $fh = fopen($myFile, 'r'); $theData = fread($fh, filesize($myFile)); } fclose($fh); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <form name="test" method="post" action=""> <textarea name="data"><?php echo $theData; ?></textarea> <input type="submit" name="submit" value="Update File" /> </form> </body> </html> 。组件模板很简单:

svgSelector

到目前为止一切正常 - SVG正确显示。现在我想将一些元素的属性绑定到变量。例如。 insinde SVG我有:

<div #selectorContainer [innerHTML]="svgSelector | safeHtml"></div>

我想将<path fill="#00ff00" d="m1319.0166 570.7281l17.700806 0l0 26.771667l-17.700806 0z" fill-rule="evenodd"></path> 属性的值绑定到变量。我该怎么做?

我得到了我的selectorContainer的引用,我可以使用它:

fill

下一步是什么?有没有办法将变量动态绑定到任何动态创建的DOM元素?

1 个答案:

答案 0 :(得分:0)

您是否尝试使用方括号[]进行环绕?即。

<path [fill]="varName" ... ></path>

或使用{{}}?即。

<path fill={{varName}} ... ></path>