如何通过小部件添加新的html元素?

时间:2019-10-16 15:01:08

标签: flutter flutter-web

我正在尝试找到一个可以插入新视频HTML的小部件。

用于颤动网。我在网站上运行了javascript。现在,我正在尝试使用flutter在网站中重用javascipt。 dart:js包用于调用JS函数。这些JS函数可操纵网页中的两个视频元素。因此,我需要创建一个插入视频元素的小部件。下面是视频窗口小部件的代码。

class ElementWidget extends SingleChildRenderObjectWidget {
    .....
    @override
    RenderHTMLElement createRenderObject(BuildContext context) {
        return RenderHTMLElement(tagName,properties);
    }
}

class RenderHTMLElement extends RenderProxyBox {
    ......
    @override
    void paint(PaintingContext context, Offset offset) {
        if (child != null) {
            context.paintChild(child, offset);
        }

        StringBuffer buffer = StringBuffer();

        if (_properties != null) {
            for (String key in _properties.keys) {
                buffer.write(" '$key'='${_properties[key]}'");
            }
         }

         ParagraphBuilder builder = ParagraphBuilder(null);
         builder.addText("<$_tagName ${buffer.toString()}></${_tagName}>");

         context.canvas.drawParagraph(builder.build(), offset);
    }
}

在Web源中,视频元素不存在。

关于如何存档的任何想法吗?

0 个答案:

没有答案