簡體   English   中英

Angular 1.5和新的組件路由器

[英]Angular 1.5 and new Component Router

我正在使用angular 1.5 beta 2和Angular 2 alpha 45的新路由器。
我找不到使用Angular 1的最新路由器的使用示例。
我可以使用@RouteConfig找到Angular 2的路由器使用@RouteConfig

有人可以解釋我如何配置角度1控制器嗎? 並且,如果可能的話,一個完整的工作示例?

更新他們已停止使用此版本的路由器,並啟動了具有不同API的版本3。 截至2016年6月20日,沒有推薦的方法將路由器v3與Angular 1一起使用。我不確定此后是否已更改。 下面的問題和答案涉及路由器v2(又名ComponentRouter)。


過時的API
一些站點表明Angular 1中的組件(用於新路由器的目的)是注冊為[name]Controller和從component/[name]/[name].html拾取的模板。 這已經過時了。

新API
討論包含最新信息,解釋如何獲取最新的Angular 1新路由器版本。

配置中使用的組件映射到使用組件名稱注冊的指令。 請參閱此示例

angular.module('app.home', [])
.directive('home', function() {
  return {
    template: 'Hello {{ home.text }}',
    controller: function HomeController() {
      this.text = 'World';
    },
    controllerAs: 'home'
  }
});

使用Angular 1.5,有一個用於注冊組件的新語法,請參見此處 我已經用這個語法了:

angular.module('app.home', [])
.component('home', {
  restrict: "EA",
  template: 'Hello {{ home.text }}',
  controller: function HomeController() {
    this.text = 'World';
  }
  // to configure a child route
  //,$routeConfig: [
  //  { aux: "/son", component: "son", as: "Left" },
  //  { aux: "/daughter", component: "daughter", as: "Left" }]
});

雖然此時它還很新,但您也可以使用帶有新角度路由器的根組件。 該組件可以將其他組件作為子組件。

我按照Pete Bacon Darwin的例子來推出一個版本。 https://github.com/petebacondarwin/ng1-component-router-demo

請注意他的版本主要組件在運行塊中傳遞$ router.config並識別具有3個點的子節點。

.run(function($router) {
    $router.config([
    { path: '/...', name: 'App', component: 'app', useAsDefault: true }
    ]);

我使用angular 1.5.0跟隨他的github。 我遇到了一些問題,發布了一些發布候選版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM