【问题标题】:Displaying a given state both as a modal and a normal view in angular js在角度js中将给定状态显示为模态视图和普通视图
【发布时间】:2016-03-05 06:03:46
【问题描述】:

我是 AngularJs 的新手,我正在尝试实现这个独特的场景并面临设计挑战。

我在 UI 路由器的帮助下在我的应用中创建了一个菜单导航栏。
假设我的应用程序中有 3 个状态。

挑战在于,我想根据导航到的方式将状态 C 显示为模态视图或普通视图。
如果从菜单中导航状态 C,我想将其显示为模式。
如果状态 C 从应用程序中的特定点导航,它必须显示为带有一些附加元素的普通视图。

我正在尝试对模态视图和常规视图仅使用一个模板和一个控制器。
我正在使用 angular ui bootstrap 提供的 $modal 服务。
我想补充一点,状态 C 有一个 UI 网格,该网格从休息服务中获取数据。

我尝试过在状态中使用非 url 参数,或使用解析将参数传递给模态并使用单独的模态控制器,但不知道这是否是正确的方法而不会导致代码冗余。

如果有人能指出正确的方向,我将不胜感激。
我很想发布代码,但在这一点上,我更多地将其视为设计问题。

【问题讨论】:

    标签: javascript angularjs modal-dialog angular-ui-router angular-ui


    【解决方案1】:

    为什么不只创建一个 html 部分 - 这是您的模板,并从 ui-router 作为 templatePath 和 $modal 引用它,如此处所述http://weblogs.asp.net/dwahlin/building-an-angularjs-modal-service

    但我认为正确的方法是创建一个自定义指令 - 表示 tab3 或模态的内容。指令是 Angular 重用和封装代码的方式。一旦你有了那个指令——也就是说,假设它被调用了,那么从 ng-view 引用它就很简单了。模板(不需要 templatePath)只是变成:并且从 $modal 引用时也是一样的。

    希望对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-18
      • 2020-07-23
      • 2011-05-25
      • 1970-01-01
      • 2011-08-25
      • 2020-04-16
      • 1970-01-01
      相关资源
      最近更新 更多