在为 aurelia 组件使用无容器功能时,我看到了奇怪的行为。我们正在为 SVG 容器中创建自定义元素,这要求我们在将自定义元素标签添加到 DOM 之前使用无容器标签剥离自定义元素标签,因为 SVG 容器中只允许使用 SVGElements 标签。我们正在使用 Aurelia 版本 1.0.0 并使用 webpack 构建我们的 SPA。
在这里您可以找到一个 gistrun 示例,该示例显示了无容器使用的 2 实现。 https://gist.run/?id=58ba6282ad54c1263eec3a141fe42183
在此示例中,我创建了 2 个视图模型并将其绑定到我们的自定义元素。用来告诉aureliaas-element="compose"
我已经创建了视图模型并且 Aurelia 不应该创建 VM。这些与自定义元素的区别在于无容器标签:
CustomElement
@containerless
在 Viewmodel 中没有标签,但在 HTML 视图中有“无容器”。withattr 组件在 HTML 视图中没有“无容器”,但它
@containerless
在 Viewmodel 中有标签,如 Aurelia HUB 中所述。
我希望在这两种情况下我都会看到一个蓝色矩形。由于无容器标签,customelement 标签被 Aurelia 剥离。但是该@containerless
标签似乎不起作用,如在实现 2 中一样。
问题:
任何线索为什么这些实现有不同的输出?哪个是正确的?我希望 2,如 Aurelia Docs 中所述,@containerless
标签应放置在视图模型上。
任何帮助,将不胜感激 :)