0

有没有什么好的方法来构建带有 Web-UI 的 Dart 应用程序并通过网络动态加载新的 HTML 模板(客户端模板)?

看起来 Web UI 模板总是与生成的 *.js 文件一起加载:

  <head>
    <!-- this will be transformed by WebUI compiler to *_generated.js code -->
    <link rel="components" href="common_templates.html"> 
  </head>
4

3 回答 3

0

目前无法使用 WebUI 动态加载和处理模板。WebUI 需要提前处理模板。我认为来自其他答案/评论的@ChrisBuckett 建议将是一个很好的方法:在可用时使用延迟加载。

另一个疯狂的想法是将 web-ui 编译器与您的应用程序一起提供并在浏览器中处理模板。注意,这在今天甚至是不可能的,因为 web-ui 目前不能用 dart2js 编译(它对 dart:io 有一些依赖)。假设,如果可能的话,它可能会比运送额外的模板要大得多。因此,如果您的目标是减少初始下载量,那么这个想法是行不通的。

于 2013-02-28T23:03:11.773 回答
0

现在可以执行 Dart 代码的延迟加载。如果你的客户端模板被实现为 Dart 源,你可以使用DeferredLibrary类。

Dart 网站的文章部分可能很快会出现更详细的文章。

于 2013-03-19T21:56:05.923 回答
0

我正在开发一个单页应用程序,该应用程序根据左侧选择的菜单将新内容动态加载到页面的内容部分。内容部分是从 WebUi 组件中填充的,但它确实是动态发生的,并且确实发生在客户端。在菜单上,我有类似的东西;

        <li> <a href="#/active">Active</a> </li>
        <li> <a href="#/completed">Completed</a> </li>

当单击菜单项时,我让应用程序响应哈希更改。他们在 ToDo 应用程序的 WebUi 实现中做了类似的事情。

该内容具有一个条件模板,该模板根据所选菜单加载 WebUi 组件。

这可能不是你的想法。如果我在这里偏离轨道,请提供更多详细信息。

于 2013-02-28T02:50:45.103 回答