Javascript 自定义aurelia属性中的简单DOM操作

Javascript 自定义aurelia属性中的简单DOM操作,javascript,dom,aurelia,aurelia-templating,Javascript,Dom,Aurelia,Aurelia Templating,我正在通过测试一个简单的DOM操作来试验Aurelia自定义属性 令我惊讶的是,通过将和椭圆节点附加到父svg节点来执行操作确实会修改HTML,但不会呈现椭圆 操作innerHtml属性确实可以按预期工作 从'aureliaframework'导入{bindable,inject}; @注入(元素) 导出类TestCustomAttribute{ 构造函数(私有元素:SVGElement){ } 附( { var椭圆=document.createElement(“椭圆”); 椭圆.setAt

我正在通过测试一个简单的DOM操作来试验Aurelia自定义属性

令我惊讶的是,通过将和椭圆节点附加到父svg节点来执行操作确实会修改HTML,但不会呈现椭圆

操作innerHtml属性确实可以按预期工作

从'aureliaframework'导入{bindable,inject};
@注入(元素)
导出类TestCustomAttribute{
构造函数(私有元素:SVGElement){
}
附(
{
var椭圆=document.createElement(“椭圆”);
椭圆.setAttribute(“cx”,“200”);
椭圆.setAttribute(“cy”,“200”);
椭圆.setAttribute(“rx”,“100”)
椭圆.setAttribute(“ry”,“100”)
setAttribute(“样式”,“填充:蓝色”)
//这是渲染的
this.element.innerHTML=“”
//这将在DOM资源管理器上显示,但不会呈现
this.element.appendChild(椭圆)

}
看起来这更像是DOM API和SVG元素的怪癖,而不是Aurelia的问题

尝试使用CreateElements并包含svg名称空间


有关更多详细信息,请参见此问题:

确实很简单。正如您所怀疑的,使用CreateElements就成功了。