angular-docs-cn/tools/broccoli
Brian Ford 6ddfff5cd5 refactor(router): improve recognition and generation pipeline
This is a big change. @matsko also deserves much of the credit for the implementation.

Previously, `ComponentInstruction`s held all the state for async components.
Now, we introduce several subclasses for `Instruction` to describe each type of navigation.

BREAKING CHANGE:

Redirects now use the Link DSL syntax. Before:

```
@RouteConfig([
	{ path: '/foo', redirectTo: '/bar' },
	{ path: '/bar', component: BarCmp }
])
```

After:

```
@RouteConfig([
	{ path: '/foo', redirectTo: ['Bar'] },
	{ path: '/bar', component: BarCmp, name: 'Bar' }
])
```

BREAKING CHANGE:

This also introduces `useAsDefault` in the RouteConfig, which makes cases like lazy-loading
and encapsulating large routes with sub-routes easier.

Previously, you could use `redirectTo` like this to expand a URL like `/tab` to `/tab/posts`:

@RouteConfig([
	{ path: '/tab', redirectTo: '/tab/users' }
	{ path: '/tab', component: TabsCmp, name: 'Tab' }
])
AppCmp { ... }

Now the recommended way to handle this is case is to use `useAsDefault` like so:

```
@RouteConfig([
	{ path: '/tab', component: TabsCmp, name: 'Tab' }
])
AppCmp { ... }

@RouteConfig([
	{ path: '/posts', component: PostsCmp, useAsDefault: true, name: 'Posts' },
	{ path: '/users', component: UsersCmp, name: 'Users' }
])
TabsCmp { ... }
```

In the above example, you can write just `['/Tab']` and the route `Users` is automatically selected as a child route.

Closes #4728
Closes #4228
Closes #4170
Closes #4490
Closes #4694
Closes #5200

Closes #5475
2015-11-30 17:06:03 +00:00
..
html-replace feat(core): extract platforms out of core 2015-11-13 19:26:14 +00:00
js-replace chore(tests): Enable dev mode in all Angular tests. 2015-11-06 07:07:04 +00:00
trees refactor(router): improve recognition and generation pipeline 2015-11-30 17:06:03 +00:00
angular_builder.d.ts feat(broccoli): add incremental dartfmt plugin 2015-05-29 18:55:37 -04:00
angular_builder.ts fix(build): fix source maps 2015-11-24 19:33:27 +00:00
broccoli-check-imports.ts cleanup(core): stop reexporting angular2/common from angular2/core 2015-11-19 19:54:27 +00:00
broccoli-dartfmt.ts fix(dartfmt): don't break win32 command line limit 2015-06-10 14:43:33 -04:00
broccoli-dest-copy.ts revert: "build: speed up karma run by passing in list of dist files that changed" 2015-06-30 14:44:44 -07:00
broccoli-filter.d.ts feat(build): Move HTML copying into the broccoli task. 2015-04-14 11:54:31 -07:00
broccoli-flatten.spec.ts test(tools): temporarily disable tests that depend on mock-fs 2015-10-03 21:33:57 +00:00
broccoli-flatten.ts build(broccoli): add support for DiffResult#addedPaths 2015-06-10 11:11:28 -07:00
broccoli-lodash.ts chore: adjust formatting to new clang-format. 2015-10-28 11:19:10 +01:00
broccoli-merge-trees.spec.ts test(tools): temporarily disable tests that depend on mock-fs 2015-10-03 21:33:57 +00:00
broccoli-merge-trees.ts feat(render): don’t use the reflector for setting properties 2015-06-22 18:35:16 -07:00
broccoli-replace.ts feat(build): Allow building in windows without admin priviledges 2015-07-08 16:10:23 -07:00
broccoli-tree-stabilizer.ts build(broccoli): add tree-stabilizer plugin to deal with unstable trees 2015-05-28 11:44:36 -07:00
broccoli-ts2dart.ts chore: fix incremental test.unit.dart 2015-11-02 20:46:27 +00:00
broccoli-typescript.ts fix(build): fix source maps 2015-11-24 19:33:27 +00:00
broccoli-writer.d.ts chore(typescript): fixes dart failures and linter 2015-09-25 20:15:55 +00:00
broccoli.d.ts fix(diffing-broccoli-plugin): wrapped trees are always stable 2015-06-08 23:35:32 -07:00
diffing-broccoli-plugin.ts build(DiffingPluginWrapper): ignore null/undefined input trees 2015-11-13 22:50:38 +00:00
multi_copy.ts chore(typescript 1.6 upgrade): fix build.tools 2015-09-25 20:15:55 +00:00
tree-differ.spec.ts test(tools): temporarily disable tests that depend on mock-fs 2015-10-03 21:33:57 +00:00
tree-differ.ts chore: Make enum names consistent with TypeScript convention 2015-08-27 22:32:21 -07:00