Durandal:在合成过程中显示“正在加载...”

2023-11-22

当 activate 方法执行其操作时,我可以轻松地显示加载消息,如下所示:

        <div data-bind="compose:ActiveVm">
            <div class="text-center" style="margin : 75px">
                <i class="fa fa-spinner fa-spin"></i>
            </div>
        </div>

但是,如果我随后使用不同的视图模型更新 ActiveVm 属性,则不会显示启动内容。我知道启动内容仅设计为在“初始”加载时显示,但是当从一个视图模型转换到另一个视图模型时,我有哪些选项可以显示此类消息?

请注意,此组合不参与路由...

更新:此处相关的 durandal 问题可能对未来的访问者有价值:https://github.com/BlueSpire/Durandal/issues/414


这就需要评论“你尝试过什么?”但考虑到我可以看到这对未来用户的好处,我想投入 0.02 美元 -

启动画面会显示在屏幕上,直到 Durandal 加载应用程序并将 div 替换为id="applicationHost"的内容包含 shell 视图和加载的后续视图。如果你想让它成为一个可重用的组件,你可以做的一件事就是采用Html.Partial正在加载的视图并在您的内部创建您自己的视图appDurandal 项目中的文件夹。

例如,您可以在应用程序文件夹内创建一个新的 HTML 视图 -

启动页.html

<div class="splash">
    <div class="message">
        My app
    </div>
    <i class="icon-spinner icon-2x icon-spin active"></i>
</div>

然后从你的shell -

<div data-bind="if: showSplash">
    <!-- ko compose: 'splashpage.html' -->
    <!-- /ko -->
</div>

而在你的查看模型每当你想显示/隐藏它时,你都可以切换可观察的 showSplash -

var showSplash = ko.observable(false);

var shell = {
    showSplash: showSplash
};
return shell;

您可以从其他方法中的激活方法中调用它查看模型像这样 -

define(['shell'], function (shell) {

    function activate() {
        shell.showSplash(true);
        // do something
        shell.showSplash(false);
    }

});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Durandal:在合成过程中显示“正在加载...” 的相关文章

  • Durandal:在合成过程中显示“正在加载...”

    当 activate 方法执行其操作时 我可以轻松地显示加载消息 如下所示 div div class text center style margin 75px i class fa fa spinner fa spin i div di
  • 如何使用 Durandal 导航下拉菜单?

    我刚刚开始与 Durandal 合作 所有部分都已就位 并且正在使用热毛巾模板来加快速度 让我困惑的一件事是如何创建比按钮组更复杂的分层导航系统 这就是我想要的结果 ABCA1 B1 C1A2 B2 C2 A B 和 C 是顶级菜单 没有附
  • Durandal 2.0 - 用于嵌套菜单的子路由器?

    我正在构建一个应用程序 并希望显示一个 2 层菜单 并且两层始终可用 杜兰达尔2 0介绍了他们的新路由器 它支持 子路由器 可以更轻松地进行深度链接 我的问题 我可以永久加载我的 子 导航路线 并在父级不活动时呈现子菜单 还是 子路由器 设
  • 使用 requirejs 注入 kendo ui

    关于 kendo ui 和 requirejs 的文档似乎遗漏了一些东西 他们告诉我如何使用 kendo web min 其中包含所有内容 http www kendoui c om blogs teamblog posts 13 05 0
  • durandal 优化器在 Visual Studio 中将其构建为构建后过程时引用了错误的路径

    我在 Visual Studio 中设置了一个构建后事件 以使用 durandal 的优化器 使用 Nodejs 来构建用于生产的 main built js 文件 收到错误消息说找不到 main built js 我相信这是因为它没有正确
  • 1 viewmodel多条路线:生命周期

    我想要有几个不同的路线指向相同的视图 视图模型 并且我已经成功地实现了这一点 route formulation moduleId formulation title Formulation nav 6 route fabrication
  • select 中的此选项不正确

    我正在尝试将 Typescript 与 Durandal 一起使用 我正在尝试使用打字稿制作入门示例 它适用于大多数方法和类 然而 在下面的 Flickr 类中 我在 select 方法中遇到了问题 当调用此方法时 似乎这不是 Flickr
  • 如何使用 durandal 处理/忽略不良路线?

    我正在尝试有条件地阻止访问某条路线 我认为这可以通过guardRoute来完成 http durandaljs com documentation Router function guardRoute routeInfo params in
  • Durandal.js 优化器不工作(空 main-built.js)

    我正在尝试让 Durandal js 优化器在我的测试项目上工作 但它似乎不会为 main built js 生成任何内容 我在 durandal amd 文件夹中的 node js 命令提示符下使用以下命令 optimizer exe v
  • 如何将 cshtml 文件与 Durandal 一起使用?

    我在 VS2012 上获得了 DurandalJS StarterKit 模板 一切都很好 但在某些观点中我需要做这样的事情 if Roles IsUserInRole Administrators p Test p 然而 对于 duran
  • ko.validation.group 没有检测到我的嵌套 observableArray 上的错误

    我使用 Durandal Breeze 开发了一个使用密集型 Knockout 绑定的项目 我有一个使用以下可观察的视图 packing description weight isotopes name activity 正如你在上面看到的
  • 杜伦达尔 谷歌翻译

    如何在 Durundal Shell js shell html 中绑定 Google 翻译 html div div script function googleTranslateElementInit new google transl
  • Parallel.js 在 IE 中处理 Blob 时出现问题

    我需要 并行 执行函数并且我使用parallel js var p new Parallel items var fn1 function item doSomething item p map fn1 then function othe
  • Durandal 登录页面重定向模式

    TL DR要求用户登录才能查看 Durandal 单页面应用程序 SPA 中的某些页面的好模式是什么 我需要一个系统 如果用户尝试导航到需要登录的 页面 他们会被重定向到登录页面 在此登录页面上成功进行身份验证后 我希望应用程序将它们重定向
  • 有没有办法访问 TypeScript 模块中的“导出”对象?

    我正在尝试使用 durandal 我需要getModuleId通过通过current模块 我的问题是 当我使用 TypeScript 时 从 AMD 模块返回的底层对象似乎无法通过 Typescript 代码访问 export functi
  • Durandaljs 可以做区域吗

    我正在尝试查看是否有办法在 Durandaljs 中进行区域操作 类似的东西 App areas home views viewmodels other views viewmodels 我看到 viewLocator 允许这种约定 vie
  • durandal :在 ViewModel 之间传递数据的最佳方式

    Durandal 如果可能的话 在 Viewmodel 之间传递数据 参数 的正确方法是什么 不处理后端 假设我有 2 个观点overview and details我希望用户单击其中的列表元素overview它获取该元素的 id 并将其传
  • Breezejs EntityManager MetadataStore 和 fetchEntityByKey

    我有一个 SPA 应用程序 durandaljs 并且有一条特定的路线 可以在其中映射我想要获取的实体的 id 模板是 todoDetail id 例如 todoDetail 232 或 todoDetail 19 在 viewmodel
  • 使用 r.js 打包使用“文本”加载视图的 SPA 应用程序

    我正在尝试使用 grunt 将 SPA 应用程序 requirejs durandal 2 knockout 构建到单个 main build js 文件中 并且我遇到了 durandal 用于加载我的 文本 插件的严重问题意见 在开发中
  • 使用knockout js实现html5拖放照片,durandal 2.0

    我在淘汰赛 js 视图模型中有一个照片列表 我希望能够在它们之间交换 实际上更正确的术语是将一张复制到另一张上面 这是我的简化视图模型 define durandal app knockout jquery function app ko

随机推荐