diff --git a/public/_includes/_hero-home.jade b/public/_includes/_hero-home.jade index 28af477476..7b87c61883 100644 --- a/public/_includes/_hero-home.jade +++ b/public/_includes/_hero-home.jade @@ -6,5 +6,5 @@ header(class="background-sky l-relative") a(href="/docs/ts/latest/quickstart.html" class="hero-cta md-raised button button-large button-plain" md-button) 开始吧! .announcement-bar.shadow-2.clearfix img(src="/resources/images/logos/angular2/angular.svg") - p Angular 2.0最终发布啦! - a(href="http://angularjs.blogspot.com/2016/09/angular2-final.html" target="_blank" class="button " + "md-button") 了解更多 + p Angular 2.0正式发布啦! + a(href="/translate/cn/blog.html" class="button " + "md-button") 了解更多 diff --git a/public/_includes/_main-nav.jade b/public/_includes/_main-nav.jade index 085b7e80d2..59435d9132 100644 --- a/public/_includes/_main-nav.jade +++ b/public/_includes/_main-nav.jade @@ -4,15 +4,15 @@ nav.main-nav.l-pinned-top.l-layer-5 h1 Angular by Google - button(class="main-nav-button main-nav-mobile-trigger l-right" aria-label="查看菜单" ng-click="appCtrl.toggleMainMenu($event)" md-button) 网站菜单 + button(class="main-nav-button main-nav-mobile-trigger l-right" aria-label="查看菜单" ng-click="appCtrl.toggleMainMenu($event)" md-button) 网站菜单 - ul(ng-class="appCtrl.showMainNav ? 'is-visible' : ''") - li.l-left 特性 - li.l-left 文档 - li.l-left 会议 - li.l-left 新闻 - li.l-left 关于中文版 - li.l-right 立即开始! - li.l-right - a.main-nav-button.md-button.ng-cloak(ng-click="appCtrl.toggleSource($event)", href) - span {{appCtrl.sourceVisible?'Hide English':'Show English'}} + ul(ng-class="appCtrl.showMainNav ? 'is-visible' : ''") + li.l-left 特性 + li.l-left 文档 + li.l-left 会议 + li.l-left 新闻 + li.l-left 关于中文版 + li.l-right 立即开始! + li.l-right + a.main-nav-button.md-button.ng-cloak(ng-click="appCtrl.toggleSource($event)", href) + span {{appCtrl.sourceVisible?'Hide English':'Show English'}} diff --git a/public/docs/ts/latest/cookbook/dependency-injection.jade b/public/docs/ts/latest/cookbook/dependency-injection.jade index 78ca03692f..bbd76b9519 100644 --- a/public/docs/ts/latest/cookbook/dependency-injection.jade +++ b/public/docs/ts/latest/cookbook/dependency-injection.jade @@ -182,7 +182,7 @@ include ../_util-fns [location strategy](../guide/router.html#location-strategy) by listing its provider in the `providers` list of the `AppModule`. - 下面的例子时第二种情况下,配置一个非默认的[location strategy](../guide/router.html#location-strategy)的组件路由器,把它加入到`AppModule`的`providers`数组中。 + 下面的例子时第二种情况下,配置一个非默认的[location strategy](../guide/router.html#location-strategy)的路由器,把它加入到`AppModule`的`providers`数组中。 +makeExample('cb-dependency-injection/ts/app/app.module.ts','providers','app/app.module.ts (providers)')(format='.') diff --git a/public/docs/ts/latest/cookbook/dynamic-form.jade b/public/docs/ts/latest/cookbook/dynamic-form.jade index f91a03eaec..31125a5572 100644 --- a/public/docs/ts/latest/cookbook/dynamic-form.jade +++ b/public/docs/ts/latest/cookbook/dynamic-form.jade @@ -21,7 +21,7 @@ include ../_util-fns The agency is constantly tinkering with the application process. We can create the forms on the fly *without changing our application code*. - 在本例中,我们使用动态表单,为正在找工作的英雄们创建一个在线申请表。职介中心会不断修改申请流程,我们要在*不修改应用代码*的情况下,动态创建这些表单。 + 在本例中,我们使用动态表单,为正在找工作的英雄们创建一个在线申请表。英雄管理局会不断修改申请流程,我们要在*不修改应用代码*的情况下,动态创建这些表单。 :marked diff --git a/public/docs/ts/latest/cookbook/ngmodule-faq.jade b/public/docs/ts/latest/cookbook/ngmodule-faq.jade index ee3b88b1ef..55cb519c1f 100644 --- a/public/docs/ts/latest/cookbook/ngmodule-faq.jade +++ b/public/docs/ts/latest/cookbook/ngmodule-faq.jade @@ -242,7 +242,7 @@ a#q-why-cant-bind-to Perhaps you declared "x" in an application sub-module but forgot to export it? The "x" class won't be visible to other modules until you add it to the `exports` list. - 也可能你在该应用的子模块中声明了“x”,但是忘了从那个模块导出它。 + 也可能你在该应用的特性模块中声明了“x”,但是忘了从那个模块导出它。 除非你把这个“x”类加入了`exports`列表中,否则它对其它模块将是不可见的。 .l-hr diff --git a/public/docs/ts/latest/glossary.jade b/public/docs/ts/latest/glossary.jade index 5622b48950..763a72194f 100644 --- a/public/docs/ts/latest/glossary.jade +++ b/public/docs/ts/latest/glossary.jade @@ -874,7 +874,7 @@ a#Q The Angular [component router](!{docsLatest}/guide/router.html) is a richly featured mechanism for configuring and managing the entire view navigation process including the creation and destruction of views. - Angular的[组件路由器(Component Router)](!{docsLatest}/guide/router.html)是一个特性丰富的机制,它可以配置和管理整个导航过程,包括建立和销毁视图。 + Angular的[路由器(Component Router)](!{docsLatest}/guide/router.html)是一个特性丰富的机制,它可以配置和管理整个导航过程,包括建立和销毁视图。 +ifDocsFor('ts|js') :marked diff --git a/public/docs/ts/latest/guide/forms.jade b/public/docs/ts/latest/guide/forms.jade index 35fdcd5fe7..cf0cab7020 100644 --- a/public/docs/ts/latest/guide/forms.jade +++ b/public/docs/ts/latest/guide/forms.jade @@ -99,7 +99,7 @@ figure.image-display Here at the *Hero Employment Agency* we use this form to maintain personal information about the heroes in our stable. Every hero needs a job. It's our company mission to match the right hero with the right crisis! - 这里是*英雄职介中心*,我们使用这个表单来维护候选英雄们的个人信息。每个英雄都需要一份工作。我们公司的任务就是让适当的英雄去解决他/她所擅长应对的危机! + 这里是*英雄管理局*,我们使用这个表单来维护候选英雄们的个人信息。每个英雄都需要一份工作。我们公司的任务就是让适当的英雄去解决他/她所擅长应对的危机! Two of the three fields on this form are required. Required fields have a green bar on the left to make them easy to spot. @@ -461,7 +461,7 @@ ol Our hero may choose one super power from a fixed list of Agency-approved powers. We maintain that list internally (in `HeroFormComponent`). - 我们的英雄可以从由职介中心认证过的固定列表中选择一项超能力。 + 我们的英雄可以从由英雄管理局认证过的固定列表中选择一项超能力。 我们先在`HeroFormComponent`中内部维护这个列表。 We'll add a `select` to our diff --git a/public/docs/ts/latest/guide/ngmodule.jade b/public/docs/ts/latest/guide/ngmodule.jade index 89e863c928..5e4418ba7d 100644 --- a/public/docs/ts/latest/guide/ngmodule.jade +++ b/public/docs/ts/latest/guide/ngmodule.jade @@ -1132,7 +1132,7 @@ a#lazy-load Both modules are in the early stages of development. Their specifics aren't important to the story and we won't discuss every line of code. - “职介中心”这个例子应用继续成长。 + “英雄管理局”这个例子应用继续成长。 它又增加了两个模块,一个用来管理雇佣的英雄,另一个用来匹配英雄与危机。 这两个模块都还处于前期开发阶段。 它们对于整个故事来说无关紧要,这里我们就不逐行讨论了。 diff --git a/public/docs/ts/latest/guide/npm-packages.jade b/public/docs/ts/latest/guide/npm-packages.jade index f2562bcd90..87987ada7e 100644 --- a/public/docs/ts/latest/guide/npm-packages.jade +++ b/public/docs/ts/latest/guide/npm-packages.jade @@ -138,7 +138,7 @@ a(id="dependencies") ***@angular/router*** - Component router. - ***@angular/router*** - 组件路由器。 + ***@angular/router*** - 路由器。 ***@angular/upgrade*** - Set of utilities for upgrading Angular 1 applications. diff --git a/public/docs/ts/latest/guide/router.jade b/public/docs/ts/latest/guide/router.jade index 84ef487c7d..38d87e48df 100644 --- a/public/docs/ts/latest/guide/router.jade +++ b/public/docs/ts/latest/guide/router.jade @@ -4,7 +4,7 @@ include ../_util-fns The Angular ***Router*** enables navigation from one [view](./glossary.html#view) to the next as users perform application tasks. - 在用户使用应用程序时,Angular的***组件路由器***能让用户从一个[视图](./glossary.html#view)导航到另一个视图。 + 在用户使用应用程序时,Angular的***路由器***能让用户从一个[视图](./glossary.html#view)导航到另一个视图。 We cover the router's primary features in this chapter, illustrating them through the evolution of a small application that we can run live. @@ -594,8 +594,8 @@ table Our client is the Hero Employment Agency. Heroes need work and The Agency finds Crises for them to solve. - 我们的客户是“英雄职介中心”。 - 英雄们需要找工作,而“职介中心”为他们寻找待解决的危机。 + 我们的客户是“英雄管理局”。 + 英雄们需要找工作,而“英雄管理局”为他们寻找待解决的危机。 The application has three main feature areas: @@ -607,7 +607,7 @@ table 1. A *Heroes* area where we maintain the list of heroes employed by The Agency. - 1. 一个*英雄*区,它维护由职介中心雇佣的英雄列表。 + 1. 一个*英雄*区,它维护由英雄管理局雇佣的英雄列表。 1. An *Admin* area where we manage the list of crises and heroes displayed. @@ -781,7 +781,7 @@ a#base-href for navigation. Thanks to `pushState`, we can make our in-app URL paths look the way we want them to look, e.g. `localhost:3000/crisis-center`. Our in-app URLs can be indistinguishable from server URLs. - 组件路由器使用浏览器的[history.pushState](https://developer.mozilla.org/en-US/docs/Web/API/History_API#Adding_and_modifying_history_entries)进行导航。 + 路由器使用浏览器的[history.pushState](https://developer.mozilla.org/en-US/docs/Web/API/History_API#Adding_and_modifying_history_entries)进行导航。 感谢`pushState`!有了它,我们就能按所期望的样子来显示应用内部的URL路径,比如:`localhost:3000/crisis-center`。虽然我们使用的全部是客户端合成的视图,但应用内部的这些URL看起来和来自服务器的没有什么不同。 Modern HTML 5 browsers were the first to support `pushState` which is why many people refer to these URLs as @@ -812,7 +812,7 @@ a#base-href Learn why "HTML 5" style is preferred, how to adjust its behavior, and how to switch to the older hash (#) style if necessary in the [Browser URL Styles](#browser-url-styles) appendix below. - HTML 5风格的导航是组件路由器的默认值。请到下面的附录[浏览器URL风格](#browser-url-styles)中学习为什么首选“HTML 5”风格、如何调整它的行为,以及如何在必要时切换回老式的hash(#)风格。 + HTML 5风格的导航是路由器的默认值。请到下面的附录[浏览器URL风格](#browser-url-styles)中学习为什么首选“HTML 5”风格、如何调整它的行为,以及如何在必要时切换回老式的hash(#)风格。 :marked .l-sub-section @@ -850,7 +850,7 @@ a#base-href It's not part of the Angular 2 core. The router is an optional service because not all applications need routing and, depending on your requirements, you may need a different routing library. - 组件路由器在它自己的`@angular/router`包中。 + 路由器在它自己的`@angular/router`包中。 它不是Angular 2内核的一部分。该路由器是可选的服务,这是因为并不是所有应用都需要路由,并且,如果需要,你还可能需要另外的路由库。 We teach our router how to navigate by configuring it with routes. @@ -1895,7 +1895,7 @@ h3#merge-hero-routes Import hero module into AppModule now. This is important because their can be only **one** owner for a declared component. In our case, the `Heroes` module is the owner of the `Heroes` components and is making them available to the `AppModule`. - 我们从根NgModule的`declarations`中移除了`HeroListComponent`,因为它现在改有`HeroesModule`提供了。 + 我们从`AppModule`的`declarations`中移除了`HeroListComponent`,因为它现在改有`HeroesModule`提供了。 这一步很重要,因为一个组件只能有**一个**所有者。现在这种情况下,`Heroes`模块应该是`Heroes`组件的所有者,并让它可用于`AppModule`中。 .l-sub-section @@ -2184,7 +2184,7 @@ a#child-routing-component we register the `CrisisService` in the `CrisisCenterModule` providers array. 在*危机中心*领域之外既不需要也没人想要`CrisisService`。 - 与其在根NgModule的提供商中注册它导致它在应用的任何地方都可见,不如在`CrisisCenterModule`的`providers`数组中注册`CrisisService`。 + 与其在`AppModule`的提供商中注册它导致它在应用的任何地方都可见,不如在`CrisisCenterModule`的`providers`数组中注册`CrisisService`。 +makeExcerpt('app/crisis-center/crisis-center.module.1.ts', 'providers', '') @@ -2307,7 +2307,7 @@ h3#import-crisis-module 把危机中心模块导入`AppModule`的路由中 are now being provided by our `HeroesModule` and our `CrisisCenter` feature modules. We'll keep our `app.routing.ts` file for general routes which we'll cover later in the chapter. - 我们还从`app.routing.ts`中移除了危机中心的初始路由。我们的路由现在是由`HeroesModule`和`CrisisCenter`子模块提供的。 + 我们还从`app.routing.ts`中移除了危机中心的初始路由。我们的路由现在是由`HeroesModule`和`CrisisCenter`特性模块提供的。 我们将保持`app.routing.ts`文件中只有通用路由,本章稍后会讲解它。 +makeExcerpt('app/app.routing.4.ts (v3)', '') diff --git a/public/docs/ts/latest/index.jade b/public/docs/ts/latest/index.jade index 4389af05d5..d21625e5fb 100644 --- a/public/docs/ts/latest/index.jade +++ b/public/docs/ts/latest/index.jade @@ -1,56 +1,83 @@ .clearfix a.card.c4(href="/docs/#{current.path[1]}/#{current.path[2]}/quickstart.html") h2.text-headline.text-uppercase Quickstart + h2.text-headline.text-uppercase 快速起步 p A short beginner guide explaining the basic concepts of Angular + p 一个简短的初学者指南,用以解释Angular的基本概念 - footer View Quickstart + footer + p View Quickstart + p 查看“快速起步” a.card.c4(href="/docs/#{current.path[1]}/#{current.path[2]}/guide/") h2.text-headline.text-uppercase Developer Guide + h2.text-headline.text-uppercase 开发指南 p An intermediate development guide covering all major features of Angular + p 一个面向中级开发者的指南,覆盖了Angular的所有主要特性 - footer View Guide + footer + p View Guide + p 查看开发指南 a.card.c4(href="/docs/#{current.path[1]}/#{current.path[2]}/api/") h2.text-headline.text-uppercase API Reference + h2.text-headline.text-uppercase API参考手册 p An advanced reference of all Angular Classes, Methods, etc. + p 一个高级的参考手册,包括所有的Angular类、方法等。 - footer View API + footer + p View API + p 查看API参考手册 .c4.secondary-content-list h4 Advanced Documentation + h4 高级文档 ul li a(href="/docs/ts/latest/guide/ngmodule.html") Angular Modules + a(href="/docs/ts/latest/guide/ngmodule.html") Angular模块 li a(href="/docs/ts/latest/guide/animations.html") Animations + a(href="/docs/ts/latest/guide/animations.html") 动画 li a(href="/docs/ts/latest/guide/attribute-directives.html") Attribute Directives + a(href="/docs/ts/latest/guide/attribute-directives.html") 属性型指令 li a(href="/docs/ts/latest/guide/browser-support.html") Browser Support + a(href="/docs/ts/latest/guide/browser-support.html") 浏览器支持 li a(href="/docs/ts/latest/guide/component-styles.html") Component Styles + a(href="/docs/ts/latest/guide/component-styles.html") 组件样式 li a(href="/docs/ts/latest/guide/ngmodule.html") View All... + a(href="/docs/ts/latest/guide/ngmodule.html") 查看全部…… .c4.secondary-content-list h4 Cookbook + h4 烹饪宝典 ul li a(href="/docs/ts/latest/cookbook/aot-compiler.html") Ahead-of-Time Compilation + a(href="/docs/ts/latest/cookbook/aot-compiler.html") 预编译 li a(href="/docs/ts/latest/cookbook/a1-a2-quick-reference.html") Angular 1 to Angular 2 + a(href="/docs/ts/latest/cookbook/a1-a2-quick-reference.html") Angular 1迁移到Angular 2 li a(href="/docs/ts/latest/cookbook/ngmodule-faq.html") Angular Module FAQ + a(href="/docs/ts/latest/cookbook/ngmodule-faq.html") Angular模块FAQ li a(href="/docs/ts/latest/cookbook/component-communication.html") Component Interaction + a(href="/docs/ts/latest/cookbook/component-communication.html") 组件交互 li a(href="/docs/ts/latest/cookbook/component-relative-paths.html") Component-Relative Paths + a(href="/docs/ts/latest/cookbook/component-relative-paths.html") 相对于组件的路径 li a(href="/docs/ts/latest/cookbook/") View All... + a(href="/docs/ts/latest/cookbook/") 查看全部…… .c4.secondary-content-list h4 Tools & Libraries + h4 工具与库 ul li a(target="_blank" href="https://github.com/angular/universal") Angular Universal @@ -58,9 +85,11 @@ a(target="_blank" href="https://augury.angular.io/") Augury li a(target="_blank" href="https://github.com/jaxio/celerio-angular-quickstart") Celerio Angular Quickstart + a(target="_blank" href="https://github.com/jaxio/celerio-angular-quickstart") Celerio Angular快速起步 li a(target="_blank" href="https://github.com/mgechev/codelyzer") Codelyzer li a(target="_blank" href="https://github.com/johnpapa/lite-server") Lite-server li a(target="_blank" href="/resources/") View All... + a(target="_blank" href="/resources/") 查看全部…… diff --git a/public/docs/ts/latest/tutorial/index.jade b/public/docs/ts/latest/tutorial/index.jade index 279f560f98..fe5b468415 100644 --- a/public/docs/ts/latest/tutorial/index.jade +++ b/public/docs/ts/latest/tutorial/index.jade @@ -9,7 +9,7 @@ include ../_util-fns Our grand plan is to build an app to help a staffing agency manage its stable of heroes. Even heroes need to find work. - 我们的终极计划是构建一个程序,来帮助职介中心管理英雄围栏(译注:比如WoW登录后看到的那个列表就是“英雄围栏”)。毕竟,英雄们也得养家糊口嘛! + 我们的终极计划是构建一个程序,来帮助英雄管理局管理英雄围栏(译注:比如WoW登录后看到的那个列表就是“英雄围栏”)。毕竟,英雄们也得养家糊口嘛! Of course we'll only make a little progress in this tutorial. What we do build will have many of the features we expect to find in a full-blown, data-driven application: acquiring and displaying diff --git a/public/docs/ts/latest/tutorial/toh-pt5.jade b/public/docs/ts/latest/tutorial/toh-pt5.jade index 3153270ea4..fb26558772 100644 --- a/public/docs/ts/latest/tutorial/toh-pt5.jade +++ b/public/docs/ts/latest/tutorial/toh-pt5.jade @@ -42,7 +42,7 @@ figure.image-display :marked We'll add Angular’s *Component Router* to our app to satisfy these requirements. - 我们将把Angular*组件路由器*加入应用中,以满足这些需求。(译注:硬件领域中的路由器是用来帮你找到另一台网络设备的,而这里的路由器用于帮你找到一个组件) + 我们将把Angular*路由器*加入应用中,以满足这些需求。(译注:硬件领域中的路由器是用来帮你找到另一台网络设备的,而这里的路由器用于帮你找到一个组件) .l-sub-section :marked @@ -311,7 +311,7 @@ block app-comp-v1 We'll need the Angular *Component Router*. - 我们需要Angular的*组件路由器*。 + 我们需要Angular的*路由器*。 block angular-router :marked @@ -1475,7 +1475,7 @@ block file-tree-end - We added the Angular *Component Router* to navigate among different components. - - 我们添加了Angular*组件路由器*在各个不同组件之间导航。 + - 我们添加了Angular*路由器*在各个不同组件之间导航。 - We learned how to create router links to represent navigation menu items. diff --git a/public/translate/cn/_data.json b/public/translate/cn/_data.json index 7bc016acc6..83305ee816 100644 --- a/public/translate/cn/_data.json +++ b/public/translate/cn/_data.json @@ -10,5 +10,9 @@ "home": { "title": "官方中文版简介", "subtitle": "Angular官方中文版的简介、致辞等" + }, + "blog": { + "title": "Angular 2震撼登场!", + "subtitle": "万众瞩目之下,Angular 2终于正式发布啦!" } } diff --git a/public/translate/cn/blog.jade b/public/translate/cn/blog.jade new file mode 100644 index 0000000000..a7a873b5d5 --- /dev/null +++ b/public/translate/cn/blog.jade @@ -0,0 +1,77 @@ +.about-cn-translation + :marked + Today, at a special meetup at Google HQ, we announced the final release version of Angular 2, the full-platform successor to Angular 1. + + 今天,在Google HQ的一个特殊的聚会上,我们发布了Angular 2的最终版,Angular 1的全平台继任者。 + + What does "final" mean? Stability that's been validated across a wide range of use cases, and a framework that's been optimized for developer productivity, small payload size, and performance. With ahead-of-time compilation and built-in lazy-loading, we’ve made sure that you can deploy the fastest, smallest applications across the browser, desktop, and mobile environments. This release also represents huge improvements to developer productivity with the Angular CLI and styleguide. + + “最终版”意味着什么?意味着它的稳定性已经得到了大范围用例的验证;意味着它已经针对产品化、文件尺寸和性能进行过优化;意味着借助预编译技术和内置的延迟加载机制,我们可以确信你能发布出最快、最小的应用,并且横跨浏览器、桌面和移动平台;意味着为开发人员准备的Angular CLI和风格指南得到了巨大的增强。 + + Angular 1 first solved the problem of how to develop for an emerging web. Six years later, the challenges faced by today’s application developers, and the sophistication of the devices that applications must support, have both changed immensely. With this release, and its more capable versions of the Router, Forms, and other core APIs, today you can build amazing apps for any platform. If you prefer your own approach, Angular is also modular and flexible, so you can use your favorite third-party library or write your own. + + Angular 1首先为新兴的Web技术解决了如何开发的问题。六年后的今天,开发人员面对的挑战是:应用程序必须支持多种多样、千变万化的设备。在这次发布中,我们有了更强力的路由器、表单和其它核心API。现在,你可以为任何平台构建酷炫的应用了。也许你更喜欢用自己的方式,Angular同样是模块化并富有弹性的,这样你就可以自由使用你喜欢的第三方库 —— 或自己写一个! + + From the beginning, we built Angular in collaboration with the open source development community. We are grateful to the large number of contributors who dedicated time to submitting pull requests, issues, and repro cases, who discussed and debated design decisions, and validated (and pushed back on) our RCs. We wish we could have brought every one of you in person to our meetup so you could celebrate this milestone with us tonight! + + 从一开始,我们就在于开源社区合作来构筑Angular。我们要对大量的捐献者表示由衷感谢!他们奉献了大量的Pull Request、Issues和可重现的用例,他们为各个设计决策展开探讨和辩论,他们对我们的各个RC进行了验证和反馈。我们真心希望可以把你们中的每一位都带到我们的聚会现场,与我们一起庆祝这个伟大的里程碑! + + ![首页截图](./homepage.png) + + ## What’s next? + + ## 下一步怎么办? + + Angular is now ready for the world, and we’re excited for you to join the thousands of developers already building with Angular 2. But what’s coming next for Angular? + + Angular已经面世,我们怀着激动的心情欢迎您成为无数个用Angular构建应用程序的开发人员中的一位。那么,Angular下一步打算做什么? + + A few of the things you can expect in the near future from the Angular team: + + 下面是一些Angular开发组近期要做的事: + + - Bug fixes and non-breaking features for APIs marked as stable + - BUG修复并对标记为稳定(stable)的API进行非破坏性变更 + - More guides and live examples specific to your use cases + - 针对您的用例写更多的开发指南和在线例子 + - More work on animations + - 在动画方面展开更多的工作 + - Angular Material 2 + - Angular Material 2库 + - Moving WebWorkers out of experimental + - 让WebWorker走出实验室 + - More features and more languages for Angular Universal + - 为Angular Universal开发更多的特性,支持更多的语言 + - Even more speed and payload size improvements + - 进一步提高速度,缩小体积 + + ## Semantic Versioning + ## 语义化版本 + + We heard loud and clear that our RC labeling was confusing. To make it easy to manage dependencies on stable Angular releases, starting today with Angular 2.0.0, we will move to semantic versioning. Angular versioning will then follow the MAJOR.MINOR.PATCH scheme as described by semver: + + 我们听到很多人大声抱怨说我们的RC版本有些混乱。为了让您在Angular的稳定版中管理依赖更轻松,从今天的Angular 2.0.0开始,我们将迁移到“语义化版本”规范。今后的Angular版本将遵循semver所描述的MAJOR.MINOR.PATCH方案: + + 1. the MAJOR version gets incremented when incompatible API changes are made to stable APIs, + 1. 当对标为稳定的API进行不兼容的变更时,增加主版本号(MAJOR), + 2. the MINOR version gets incremented when backwards-compatible functionality are added, + 2. 当添加了向后兼容的功能时,增加此版本号(MINOR), + 3. the PATCH version gets incremented when backwards-compatible bug are fixed. + 3. 当以向后兼容的方式修复了bug时,增加补丁号(PATCH)。 + + Moving Angular to semantic versioning ensures rapid access to the newest features for our component and tooling ecosystem, while preserving a consistent and reliable development environment for production applications that depend on stability between major releases, but still benefit from bug fixes and new APIs. + + 迁移到语义化版本方案可以确保我们的组件和工具等生态圈能快速访问最新特性。虽然即使保持了一致和稳定的开发环境,产品级应用仍然会依赖于主版本之间的稳定性,但这对BUG修复和发布新API来说仍然是显著的优点。 + + ## Contributors + + ## 贡献者 + + placeholder + + Aaron Frost, Aaron (Ron) Tsui, Adam Bradley, Adil Mourahi, agpreynolds, Ajay Ambre, Alberto Santini, Alec Wiseman, Alejandro Caravaca Puchades, Alex Castillo, Alex Eagle, Alex Rickabaugh, Alex Wolfe, Alexander Bachmann, Alfonso Presa, Ali Johnson, Aliaksei Palkanau, Almero Steyn, Alyssa Nicoll, Alxandr, André Gil, Andreas Argelius, Andreas Wissel, Andrei Alecu, Andrei Tserakhau, Andrew, Andrii Nechytailov, Ansel Rosenberg, Anthony Zotti, Anton Moiseev, Artur Meyster, asukaleido, Aysegul Yonet, Aziz Abbas, Basarat Ali Syed, BeastCode, Ben Nadel, Bertrand Laporte, Blake La Pierre, Bo Guo, Bob Nystrom, Borys Semerenko, Bradley Heinz, Brandon Roberts, Brendan Wyse, Brian Clark, Brian Ford, Brian Hsu, dozingcat, Brian Yarger, Bryce Johnson, CJ Avilla, cjc343, Caitlin Potter, Cédric Exbrayat, Chirayu Krishnappa, Christian Weyer, Christoph Burgdorf, Christoph Guttandin, Christoph Hoeller, Christoffer Noring, Chuck Jazdzewski, Cindy, Ciro Nunes, Codebacca, Cody Lundquist, Cody-Nicholson, Cole R Lawrence, Constantin Gavrilete, Cory Bateman, Craig Doremus, crisbeto, Cuel, Cyril Balit, Cyrille Tuzi, Damien Cassan, Dan Grove, Dan Wahlin, Daniel Leib, Daniel Rasmuson, dapperAuteur, Daria Jung, David East, David Fuka, David Reher, David-Emmanuel Divernois, Davy Engone, Deborah Kurata, Derek Van Dyke, DevVersion, Dima Kuzmich, Dimitrios Loukadakis, Dmitriy Shekhovtsov, Dmitry Patsura, Dmitry Zamula, Dmytro Kulyk, Donald Spencer, Douglas Duteil, dozingcat, Drew Moore, Dylan Johnson, Edd Hannay, Edouard Coissy, eggers, elimach, Elliott Davis, Eric Jimenez, Eric Lee Carraway, Eric Martinez, Eric Mendes Dantas, Eric Tsang, Essam Al Joubori, Evan Martin, Fabian Raetz, Fahimnur Alam, Fatima Remtullah, Federico Caselli, Felipe Batista, Felix Itzenplitz, Felix Yan, Filip Bruun, Filipe Silva, Flavio Corpa, Florian Knop, Foxandxss, Gabe Johnson, Gabe Scholz, GabrielBico, Gautam krishna.R, Georgii Dolzhykov, Georgios Kalpakas, Gerd Jungbluth, Gerard Sans, Gion Kunz, Gonzalo Ruiz de Villa, Grégory Bataille, Günter Zöchbauer, Hank Duan, Hannah Howard, Hans Larsen, Harry Terkelsen, Harry Wolff, Henrique Limas, Henry Wong, Hiroto Fukui, Hongbo Miao, Huston Hedinger, Ian Riley, Idir Ouhab Meskine, Igor Minar, Ioannis Pinakoulakis, The Ionic Team, Isaac Park, Istvan Novak, Itay Radotzki, Ivan Gabriele, Ivey Padgett, Ivo Gabe de Wolff, J. Andrew Brassington, Jack Franklin, Jacob Eggers, Jacob MacDonald, Jacob Richman, Jake Garelick, James Blacklock, James Ward, Jason Choi, Jason Kurian, Jason Teplitz, Javier Ros, Jay Kan, Jay Phelps, Jay Traband, Jeff Cross, Jeff Whelpley, Jennifer Bland, jennyraj, Jeremy Attali, Jeremy Elbourn, Jeremy Wilken, Jerome Velociter, Jesper Rønn-Jensen, Jesse Palmer, Jesús Rodríguez, Jesús Rodríguez, Jimmy Gong, Joe Eames, Joel Brewer, John Arstingstall, John Jelinek IV, John Lindquist, John Papa, John-David Dalton, Jonathan Miles, Joost de Vries, Jorge Cruz, Josef Meier, Josh Brown, Josh Gerdes, Josh Kurz, Josh Olson, Josh Thomas, Joseph Perrott, Joshua Otis, Josu Guiterrez, Julian Motz, Julie Ralph, Jules Kremer, Justin DuJardin, Kai Ruhnau, Kapunahele Wong, Kara Erickson, Kathy Walrath, Keerti Parthasarathy, Kenneth Hahn, Kevin Huang, Kevin Kirsche, Kevin Merckx, Kevin Moore, Kevin Western, Konstantin Shcheglov, Kurt Hong, Levente Morva, laiso, Lina Lu, LongYinan, Lucas Mirelmann, Luka Pejovic, Lukas Ruebbelke, Marc Fisher, Marc Laval, Marcel Good, Marcy Sutton, Marcus Krahl, Marek Buko, Mark Ethan Trostler, Martin Gontovnikas, Martin Probst, Martin Staffa, Matan Lurey, Mathias Raacke, Matias Niemelä, Matt Follett, Matt Greenland, Matt Wheatley, Matteo Suppo, Matthew Hill, Matthew Schranz, Matthew Windwer, Max Sills, Maxim Salnikov, Melinda Sarnicki Bernardo, Michael Giambalvo, Michael Goderbauer, Michael Mrowetz, Michael-Rainabba Richardson, Michał Gołębiowski, Mikael Morlund, Mike Ryan, Minko Gechev, Miško Hevery, Mohamed Hegazy, Nan Schweiger, Naomi Black, Nathan Walker, The NativeScript Team, Nicholas Hydock, Nick Mann, Nick Raphael, Nick Van Dyck, Ning Xia, Olivier Chafik, Olivier Combe, Oto Dočkal, Pablo Villoslada Puigcerber, Pascal Precht, Patrice Chalin, Patrick Stapleton, Paul Gschwendtner, Pawel Kozlowski, Pengfei Yang, Pete Bacon Darwin, Pete Boere, Pete Mertz, Philip Harrison, Phillip Alexander, Phong Huynh, Polvista, Pouja, Pouria Alimirzaei, Prakal, Prayag Verma, Rado Kirov, Raul Jimenez, Razvan Moraru, Rene Weber, Rex Ye(叶志敏), Richard Harrington, Richard Kho, Richard Sentino, Rob Eisenberg, Rob Richardson, Rob Wormald, Robert Ferentz, Robert Messerle, Roberto Simonetti, Rodolfo Yabut, Sam Herrmann, Sam Julien, Sam Lin, Sam Rawlins, Sammy Jelin, Sander Elias, Scott Hatcher, Scott Hyndman, Scott Little, ScottSWu, Sebastian Hillig, Sebastian Müller, Sebastián Duque, Sekib Omazic, Shahar Talmi, Shai Reznik, Sharon DiOrio, Shannon Ayres, Shefali Sinha, Shlomi Assaf, Shuhei Kagawa, Sigmund Cherem, Simon Hürlimann (CyT), Simon Ramsay, Stacy Gay, Stephen Adams, Stephen Fluin, Steve Mao, Steve Schmitt, Suguru Inatomi, Tamas Csaba, Ted Sander, Tero Parviainen, Thierry Chatel, Thierry Templier, Thomas Burleson, Thomas Henley, Tim Blasi, Tim Ruffles, Timur Meyster, Tobias Bosch, Tony Childs, Tom Ingebretsen, Tom Schoener, Tommy Odom, Torgeir Helgevold, Travis Kaufman, Trotyl Yu, Tycho Grouwstra, The Typescript Team, Uli Köhler, Uri Shaked, Utsav Shah, Valter Júnior, Vamsi V, Vamsi Varikuti, Vanga Sasidhar, Veikko Karsikko, Victor Berchet, Victor Mejia, Victor Savkin, Vinci Rufus, Vijay Menon, Vikram Subramanian, Vivek Ghaisas, Vladislav Zarakovsky, Vojta Jina, Ward Bell, Wassim Chegham, Wenqian Guo, Wesley Cho, Will Ngo, William Johnson, William Welling, Wilson Mendes Neto, Wojciech Kwiatek, Yang Lin, Yegor Jbanov, Zach Bjornson, Zhicheng Wang(汪志成 - 雪狼), and many more... + + + With gratitude and appreciation, and anticipation to see what you'll build next, welcome to the next stage of Angular. + + 带着激动与感恩,我们渴望看到你们构建出更加激动人心的应用。欢迎来到Angular的新时代! diff --git a/public/translate/cn/homepage.png b/public/translate/cn/homepage.png new file mode 100644 index 0000000000..f034cc87b7 Binary files /dev/null and b/public/translate/cn/homepage.png differ