angularjs – Angular ui-router:ui-views vs directives?

前端之家收集整理的这篇文章主要介绍了angularjs – Angular ui-router:ui-views vs directives?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
angular ui-router允许多个嵌套视图。这些可互换的观点的作用似乎与指令的作用重叠。

使用(多个,嵌套)ui视图vs angular的指令的优点/缺点是什么?

更新

状态和路由是两个不同的功能。状态允许您交换partial.html模板及其控制器,您可以(optionally?)指定相应的URL /路由。

在来自Tim Kindberg(ui-router dev)的电子邮件回复中:

ui-view is a directive,so if you use it you are using a directive
that has been worked on particular to work well with the rest of the
ui-router module. I can’t imagine it being easy to roll your own
directive to replace this functionality.

对此,它似乎你可以有两个选项:

正常指令:

app.directive('myDir1',{/*  controller: ... */})
   .directive('myDir2',{/*  controller: ... */})

vs ui-view“指令”

$stateProvider.state('route1',{
     /*  url: "/route1",// optional?? */
      views: {
        "myDir1": { templateUrl: "myDir1.html" /*,controller: ... */ },"myDir2": { templateUrl: "myDir2.html" /*,controller: ... */ }
      }
    })

奖金问题:

normal angular directive features是否可以查看?如:

> Transclude
>更换
>隔离范围
>编译/链接功能

如果ui-views ARE指令,它似乎清楚它们的用法是不同的。是否有必要协调这些模型?

如果你使用Angular UI路由器的内联视图指向指令呢?

假设您有一个指令,用于处理用户帐户上的CRUD操作的表。我们会说这个指令被命名为user-admin。我们的路由文件将如下所示:

.state('users',{
  url: '/users',template: "<user-admin>"
});

这将给你很多好东西:

>允许您有一个直接指向指令的网址
>当状态只是一个指令时,删除需要两个模板(查看模板和指令模板)的重复
>允许您开始将更多的控制器逻辑转移到Angular 2.0准备中的指令中。见herehere

原文链接:https://www.f2er.com/angularjs/146570.html

猜你在找的Angularjs相关文章