This repository has been archived by the owner on Aug 1, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
7.f6b52473d2792e3a9872.js
1 lines (1 loc) · 276 KB
/
7.f6b52473d2792e3a9872.js
1
(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{qm1q:function(e,l,a){"use strict";a.r(l);var t=a("CcnG"),o=a("r45k"),c=function(){this.item={cols:1,urls:{"zh-CN":"docs/acl.md"},content:{"zh-CN":{content:'<article><p><a href="/acl" data-url="/acl">ACL \u6587\u6863</a>\u3002</p></article>',meta:{order:50,title:"ACL",type:"Advance"},toc:[]}},demo:!1},this.codes=[]},i=function(){this.item={cols:1,urls:{"zh-CN":"docs/architecture.md"},content:{"zh-CN":{content:'<article><p>ng-alain \u811a\u624b\u67b6\u662f\u57fa\u4e8e Angular \u548c ng-zorro-antd\uff08Ant Design \u7684 Angular \u7248\u672c\uff09 \u57fa\u7840\u7ec4\u4ef6\u5e93\u7684\u4e2d\u540e\u53f0\u524d\u7aef\u89e3\u51b3\u65b9\u6848\u3002\u811a\u624b\u67b6\u5305\u542b\u7740\u4e00\u5957\u901a\u7528\u7684\u529f\u80fd\u548c\u4e1a\u52a1\u7ec4\u4ef6\u5e93\uff0c\u5b83\u4eec\u53ef\u4ee5\u6781\u5927\u5730\u51cf\u5c11\u4e00\u4e9b\u57fa\u7840\u5efa\u8bbe\u5f00\u53d1\u5de5\u4f5c\u3002</p><h2 id="\u7ed3\u6784\u56fe">\u7ed3\u6784\u56fe<a onclick="window.location.hash = \'\u7ed3\u6784\u56fe\'" class="anchor">#</a></h2><p><img width=700 src="https://github.com/cipchk/delon/raw/master/_screenshot/architecture.png" /></p><p><strong>@delon/theme</strong></p><p>\u811a\u624b\u67b6\u4e3b\u9898\u7cfb\u7edf\u5e93\uff0c\u6211\u4eec\u5c06\u4e3b\u9898\u76f8\u5173\u53d1\u5e03\u81f3 Npm \u5f53\u4e2d\uff0c\u8fd9\u6781\u5927\u5730\u7b80\u5316\u4e86\u5347\u7ea7\u6210\u672c\u3002</p><p>\u4e3b\u9898\u7cfb\u7edf\u9664\u4e86\u5305\u542b ng-alain \u57fa\u7840\u6846\u67b6\u6240\u9700\u8981\u7684\u6837\u5f0f\uff08\u5305\u542bCSS\u5de5\u5177\u96c6\uff0c\u4e00\u5957\u7c7b\u4f3cbootstrap\uff09\u4ee5\u5916\uff0c\u8fd8\u5305\u542b\u4e00\u4e9b\u901a\u7528\u7684\u6570\u636e\u6e32\u67d3\uff08Pipe\uff09\u3001\u670d\u52a1\u5de5\u5177\u7c7b\uff08\u9875\u9762\u6807\u9898\u3001\u6eda\u52a8\u6761\u7b49\uff09\u7684\u96c6\u5408\uff0c\u8fd9\u4e9b\u662f\u65e5\u5e38\u5fc5\u4e0d\u53ef\u5c11\u7684\u4e00\u4e9b\u7ec4\u6210\u3002</p><p><strong>@delon/abc</strong></p><p>\u811a\u624b\u67b6\u5185\u63d0\u4f9b\u4e86\u4e00\u5957\u9ed8\u8ba4<a href="/components/" data-url="/components/">\u4e1a\u52a1\u7ec4\u4ef6</a>\uff0c\u8fd9\u4e9b\u7ec4\u4ef6\u62bd\u8c61\u4e86\u63a7\u5236\u53f0\u4e1a\u52a1\u4e2d\u7684\u4e00\u4e9b\u5e38\u89c1\u533a\u5757\u3002\u6211\u4eec\u5c06\u6301\u7eed\u7ef4\u62a4\u548c\u8fed\u4ee3\u8fd9\u4e9b\u7ec4\u4ef6\uff0c\u4e3a\u4e2d\u540e\u53f0\u4e1a\u52a1\u63d0\u4f9b\u6bd4 Ant Design \u57fa\u7840\u7ec4\u4ef6\u66f4\u9ad8\u7ea7\u522b\u7684\u62bd\u8c61\u3002</p><p><strong>@delon/form</strong></p><p><a href="/form" data-url="/form">@delon/form</a> \u662f\u4e00\u4e2a\u57fa\u4e8e <a target="_blank" href="http://json-schema.org/" data-url="http://json-schema.org/">JSON Schema</a> \u6807\u51c6\u7684\u52a8\u6001\u6784\u5efa\u8868\u5355\u3002</p><p><strong>@delon/auth</strong></p><p><a href="/docs/auth" data-url="/docs/auth">\u7528\u6237\u8ba4\u8bc1</a>\u6a21\u5757\uff0c\u7528\u4e8e\u89e3\u51b3\u5982\u4f55\u83b7\u53d6\u3001\u5b58\u53d6\u3001\u4f7f\u7528\u8fd9\u4e09\u4e2a\u6b65\u9aa4\u7684\u7528\u6237\u8ba4\u8bc1\u73af\u8282\u3002</p><p><strong>@delon/acl</strong></p><p><a href="/docs/acl" data-url="/docs/acl">ACL</a>\u8bbf\u95ee\u63a7\u5236\u5217\u8868\uff0c\u662f\u4e00\u79cd\u975e\u5e38\u7b80\u5355\u7684\u57fa\u4e8e\u89d2\u8272\u6743\u9650\u63a7\u5236\uff0c\u751a\u81f3\u8fbe\u5230\u63a7\u5236\u67d0\u4e2a\u6309\u94ae\u663e\u9690\u7684\u7c92\u5ea6\u3002</p><p><strong>@delon/cache</strong></p><p>\u5c06\u5b57\u5178\u3001\u57ce\u5e02\u6570\u636e\u7b49<a href="/docs/cache" data-url="/docs/cache">\u7f13\u5b58</a>\u81f3\u5185\u5b58\u6216\u6301\u4e45\u5316\u5f53\u4e2d\uff0c\u6709\u6548\u51cf\u5c11 Http \u8bf7\u6c42\u3002</p><p><strong>@delon/mock</strong></p><p><a href="/docs/mock" data-url="/docs/mock">Mock</a>\u4f1a\u62e6\u622a Angular Http \u8bf7\u6c42\u5e76\u8fd4\u56de\u6d4b\u8bd5\u6570\u636e\u3002</p><p><strong>@delon/util</strong></p><p><a href="/util" data-url="/util">\u65e5\u5e38\u5de5\u5177\u96c6</a>\u3002</p><p><strong>CLI Schematics</strong></p><p><a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a>\u3002</p><h2 id="\u6587\u6863\u548c\u53cd\u9988">\u6587\u6863\u548c\u53cd\u9988<a onclick="window.location.hash = \'\u6587\u6863\u548c\u53cd\u9988\'" class="anchor">#</a></h2><p>\u4f60\u53ef\u4ee5\u5728 <a href="http://ng-alain.com" data-url="http://ng-alain.com">ng-alain.com</a> \u627e\u5230\u6240\u6709\u7684\u6587\u6863\u3002</p><p>\u968f\u7740\u811a\u624b\u67b6\u7684\u66f4\u65b0\u800c\u4e0d\u65ad\u8fed\u4ee3\uff08<a target="_blank" href="https://github.com/cipchk/ng-alain/releases" data-url="https://github.com/cipchk/ng-alain/releases">\u66f4\u65b0\u65e5\u5fd7</a>\uff09\uff0c\u6709\u4efb\u4f55\u95ee\u9898\u548c\u9700\u6c42\u53ef\u4ee5\u53cd\u9988\u5230 <a target="_blank" href="https://github.com/cipchk/ng-alain/issues" data-url="https://github.com/cipchk/ng-alain/issues">\u8fd9\u91cc</a>\u3002</p><h3 id="\u7248\u672c\u4fe1\u606f">\u7248\u672c\u4fe1\u606f<a onclick="window.location.hash = \'\u7248\u672c\u4fe1\u606f\'" class="anchor">#</a></h3><table><thead><tr><th>package name</th><th>npm version</th><th>npm next version</th><th>taobao version</th></tr></thead><tbody><tr><td>ng-alain <a href="/cli" data-url="/cli">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/ng-alain" data-url="https://www.npmjs.com/package/ng-alain"><img src="https://img.shields.io/npm/v/ng-alain.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/ng-alain" data-url="https://www.npmjs.com/package/ng-alain"><img src="https://img.shields.io/npm/v/ng-alain/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/ng-alain" data-url="https://npm.taobao.org/package/ng-alain"><img src="https://npm.taobao.org/badge/v/ng-alain.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/theme <a href="/theme" data-url="/theme">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/theme" data-url="https://www.npmjs.com/package/@delon/theme"><img src="https://img.shields.io/npm/v/@delon/theme.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/theme" data-url="https://www.npmjs.com/package/@delon/theme"><img src="https://img.shields.io/npm/v/@delon/theme/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/theme" data-url="https://npm.taobao.org/package/@delon/theme"><img src="https://npm.taobao.org/badge/v/@delon/theme.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/abc <a href="/components" data-url="/components">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/abc" data-url="https://www.npmjs.com/package/@delon/abc"><img src="https://img.shields.io/npm/v/@delon/abc.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/abc" data-url="https://www.npmjs.com/package/@delon/abc"><img src="https://img.shields.io/npm/v/@delon/abc/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/abc" data-url="https://npm.taobao.org/package/@delon/abc"><img src="https://npm.taobao.org/badge/v/@delon/abc.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/form <a href="/form" data-url="/form">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/form" data-url="https://www.npmjs.com/package/@delon/form"><img src="https://img.shields.io/npm/v/@delon/form.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/form" data-url="https://www.npmjs.com/package/@delon/form"><img src="https://img.shields.io/npm/v/@delon/form/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/form" data-url="https://npm.taobao.org/package/@delon/form"><img src="https://npm.taobao.org/badge/v/@delon/form.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/acl <a href="/acl" data-url="/acl">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/acl" data-url="https://www.npmjs.com/package/@delon/acl"><img src="https://img.shields.io/npm/v/@delon/acl.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/acl" data-url="https://www.npmjs.com/package/@delon/acl"><img src="https://img.shields.io/npm/v/@delon/acl/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/acl" data-url="https://npm.taobao.org/package/@delon/acl"><img src="https://npm.taobao.org/badge/v/@delon/acl.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/auth <a href="/auch" data-url="/auch">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/auth" data-url="https://www.npmjs.com/package/@delon/auth"><img src="https://img.shields.io/npm/v/@delon/auth.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/auth" data-url="https://www.npmjs.com/package/@delon/auth"><img src="https://img.shields.io/npm/v/@delon/auth/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/auth" data-url="https://npm.taobao.org/package/@delon/auth"><img src="https://npm.taobao.org/badge/v/@delon/auth.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/mock <a href="/mock" data-url="/mock">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/mock" data-url="https://www.npmjs.com/package/@delon/mock"><img src="https://img.shields.io/npm/v/@delon/mock.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/mock" data-url="https://www.npmjs.com/package/@delon/mock"><img src="https://img.shields.io/npm/v/@delon/mock/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/mock" data-url="https://npm.taobao.org/package/@delon/mock"><img src="https://npm.taobao.org/badge/v/@delon/mock.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/cache <a href="/cache" data-url="/cache">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/cache" data-url="https://www.npmjs.com/package/@delon/cache"><img src="https://img.shields.io/npm/v/@delon/cache.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/cache" data-url="https://www.npmjs.com/package/@delon/cache"><img src="https://img.shields.io/npm/v/@delon/cache/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/cache" data-url="https://npm.taobao.org/package/@delon/cache"><img src="https://npm.taobao.org/badge/v/@delon/cache.svg?style=flat-square" alt="Taobao version" /></a></td></tr><tr><td>@delon/util <a href="/util" data-url="/util">Document</a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/util" data-url="https://www.npmjs.com/package/@delon/util"><img src="https://img.shields.io/npm/v/@delon/util.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://www.npmjs.com/package/@delon/util" data-url="https://www.npmjs.com/package/@delon/util"><img src="https://img.shields.io/npm/v/@delon/util/next.svg" alt="NPM version" /></a></td><td><a target="_blank" href="https://npm.taobao.org/package/@delon/util" data-url="https://npm.taobao.org/package/@delon/util"><img src="https://npm.taobao.org/badge/v/@delon/util.svg?style=flat-square" alt="Taobao version" /></a></td></tr></tbody></table></article>',meta:{order:1,title:{"en-US":"Architecture","zh-CN":"\u4f53\u7cfb\u7ed3\u6784"},type:"Basic"},toc:[{href:"#\u7ed3\u6784\u56fe",title:"\u7ed3\u6784\u56fe",h:2},{href:"#\u6587\u6863\u548c\u53cd\u9988",title:"\u6587\u6863\u548c\u53cd\u9988",h:2},{href:"#\u7248\u672c\u4fe1\u606f",title:"\u7248\u672c\u4fe1\u606f",h:3}]}},demo:!1},this.codes=[]},n=function(){this.item={cols:1,urls:{"zh-CN":"docs/auth.md"},content:{"zh-CN":{content:'<article><p><a href="/auth" data-url="/auth">\u7528\u6237\u8ba4\u8bc1\u6587\u6863</a>\u3002</p></article>',meta:{order:40,title:{"en-US":"Auth","zh-CN":"\u7528\u6237\u8ba4\u8bc1"},type:"Advance"},toc:[]}},demo:!1},this.codes=[]},p=function(){this.item={cols:1,urls:{"zh-CN":"docs/cache.md"},content:{"zh-CN":{content:'<article><p><a href="/cache" data-url="/cache">\u7f13\u5b58\u6587\u6863</a>\u3002</p></article>',meta:{order:70,title:{"en-US":"Cache","zh-CN":"\u7f13\u5b58"},type:"Advance"},toc:[]}},demo:!1},this.codes=[]},s=function(){this.item={cols:1,urls:{"zh-CN":"docs/changelog-81.md"},content:{"zh-CN":{content:'<article><h2 id="\u5199\u5728\u524d\u9762">\u5199\u5728\u524d\u9762<a onclick="window.location.hash = \'\u5199\u5728\u524d\u9762\'" class="anchor">#</a></h2><p><code>1.0.x</code> \u4e3b\u8981\u662f\u5bf9 ng-zorro-antd 0.7.0 \u7684\u540c\u6b65\u5347\u7ea7\uff0c\u7531\u4e8e zorro \u57fa\u7840\u7ec4\u4ef6\u7684api\u6709\u6bd4\u8f83\u5927\u7684\u53d8\u52a8\uff0c\u56e0\u6b64\u672c\u6587\u4e0d\u4f1a\u53d9\u8ff0\u5173\u4e8e zorro \u5982\u679c\u5347\u7ea7\u7684\u95ee\u9898\u3002</p><p><code>1.0.x</code> \u4e3b\u8981\u7684\u53d8\u5316\u662f <code>@delon/*</code> \u7cfb\u5217\u4e1a\u52a1\u7ec4\u4ef6\u7684\u5347\u7ea7\uff0c\u5176\u4e2d\u8fd9\u4e00\u90e8\u5206\u5e76\u6ca1\u6709\u592a\u591a\u7ec4\u4ef6API\u7684\u53d8\u52a8\u3002\u53cd\u800c\u5c3d\u53ef\u80fd\u5728\u505a\u4e00\u4e9b\u51cf\u6cd5\uff0c\u5176\u4e3b\u8981\u5305\u62ec\uff1a</p><ul><li><p>\u79fb\u9664\u5341\u79cd\u4e3b\u9898\u8272\uff0c\u6539\u7531\u52a8\u6001<a href="/tools/theme" data-url="/tools/theme">\u81ea\u5b9a\u4e49\u4e3b\u9898</a></p></li><li><p>\u79fb\u9664 <code>forRoot()</code> \u53c2\u6570\u914d\u7f6e\u9879\uff0c\u7531 <code>provider</code> \u7edf\u4e00\u914d\u7f6e\uff0c\u66f4\u6613\u4ea4\u4ed8</p></li><li><p><code>@delon/abc</code> \u90e8\u5206\u7ec4\u4ef6\u540d\u7684\u4fee\u6539\uff0c\u8fd9\u4e00\u90e8\u5206\u53ef\u4ee5\u76f4\u63a5\u641c\u7d22\u66ff\u6362\u5b8c\u6210</p></li><li><p><code>ng-zorro-antd-extra</code> \u4e0d\u518d\u7ef4\u62a4\uff0c\u6307\u5f15\u540e\u9762\u6709\u53d8\u52a8\u7ec6\u8282</p></li><li><p><code>ng-tree-antd</code> \u4e0d\u518d\u7ef4\u62a4\uff0c\u4f7f\u7528 <code>nz-tree</code></p></li><li><p><code>ng-clipboard-antd</code> \u4e0d\u518d\u7ef4\u62a4\uff0c\u4f7f\u7528 <code>@delon/util</code> \u7684 <code>copy</code> \u65b9\u6cd5</p></li></ul><p><strong>HTML\u6a21\u677f\u5347\u7ea7\u5de5\u5177</strong></p><p>\u4e00\u4e2a\u7b80\u5316\u5347\u7ea7\u6210\u672c\u7684\u5c0f<a href="/6to7" data-url="/6to7">\u5de5\u5177</a>\uff0c\u4ee5\u4e0b\u6240\u6709\u7ed3\u5c3e\u5e26\u6709\u3010<em>6to7</em>\u3011\u8868\u793a\u5728<a href="/6to7" data-url="/6to7">HTML\u6a21\u677f\u5347\u7ea7\u5de5\u5177</a>\u53ef\u88ab\u76f4\u63a5\u66ff\u6362\u3002\u540c\u65f6\u652f\u6301 zorro \u4e00\u4e9b\u57fa\u7840\u7ec4\u4ef6\uff0c\u5305\u62ec\uff1a\u6309\u94ae\u3001\u8868\u5355\u3001\u5e03\u5c40\u3001\u8868\u683c\u3002</p><p><strong>nz-schema-form</strong></p><p>\u4f7f\u7528 <code>@delon/form</code> \u66ff\u4ee3\u3002</p><h2 id="\u811a\u624b\u67b6">\u811a\u624b\u67b6<a onclick="window.location.hash = \'\u811a\u624b\u67b6\'" class="anchor">#</a></h2><ul><li><p>Module</p><ul><li><p>\u6539\u53d8 delon.module.ts\u3001shared.module.ts \u7684\u4f7f\u7528\u65b9\u5f0f\uff0c\u4e0d\u518d\u5355\u72ec\u5bfc\u5165\u6a21\u5757\u56e0\u4e3acli \u5728\u8fdb\u884c Tree Shaking \u65f6\u53ef\u4ee5\u81ea\u52a8\u6392\u9664\u672a\u4f7f\u7528\u8fc7\u7684\u6a21\u5757</p></li></ul></li><li><p>\u6837\u5f0f</p><ul><li><p>\u6539\u53d8 styles.less \u7684\u4f7f\u7528\u65b9\u5f0f</p></li><li><p>\u79fb\u9664 <code>font-awesome</code>\u3001<code>simple-line-icons</code> \u6837\u5f0f</p></li></ul></li><li><p>\u5176\u5b83</p><ul><li><p><a href="/components/reuse-tab" data-url="/components/reuse-tab">\u8def\u7531\u590d\u7528</a>\u9700\u8981\u989d\u5916\u6ce8\u518c <code>RouteReuseStrategy</code></p></li></ul></li></ul><h3 id="reuse-tab">reuse-tab<a onclick="window.location.hash = \'reuse-tab\'" class="anchor">#</a></h3><ul><li><p>\u53f3\u51fb\u83dc\u5355\uff1a\u5f53\u6309\u4e0b\u952e\u76d8 <code>ctrl</code> \u65f6\u4f1a\u5f3a\u5236\u79fb\u9664\u4e0d\u53ef\u5173\u95ed\u9879</p></li></ul><h3 id="pro-header">pro-header<a onclick="window.location.hash = \'pro-header\'" class="anchor">#</a></h3><ul><li><p><code>pro-header</code> \u7ec4\u4ef6\u540d\u53d8\u66f4\u4e3a <code>page-header</code> <em>6to7</em></p></li><li><p>\u5185\u5bb9\u65e0\u987b\u6307\u5b9a <code><ng-tempatel #content></code> <em>6to7</em></p></li></ul><h3 id="global-footer">global-footer<a onclick="window.location.hash = \'global-footer\'" class="anchor">#</a></h3><ul><li><p><code>copyright</code> \u65e0\u987b\u6307\u5b9a <code><ng-tempatel #copyright></code> <em>6to7</em></p></li></ul><h3 id="Chart">Chart<a onclick="window.location.hash = \'Chart\'" class="anchor">#</a></h3><ul><li><p>\u6240\u6709\u7ec4\u4ef6\u540d\u589e\u52a0 <code>g2-</code> \u5f00\u5934 <em>6to7</em></p></li><li><p><code>chart-card</code> \u66ff\u6362\u6210 <code>g2-card</code> <em>6to7</em></p></li></ul><h3 id="notice-icon">notice-icon<a onclick="window.location.hash = \'notice-icon\'" class="anchor">#</a></h3><ul><li><p>\u79fb\u9664 <code>dot</code> \u5c5e\u6027</p></li><li><p>\u589e\u52a0 <code>NoticeItem.clearText</code> \u6e05\u7a7a\u6587\u672c</p></li><li><p>\u589e\u52a0 <code>NoticeIconList.read</code> \u8868\u793a\u9879\u662f\u5426\u5df2\u8bfb\u72b6\u6001</p></li></ul><h3 id="simple-table">simple-table<a onclick="window.location.hash = \'simple-table\'" class="anchor">#</a></h3><ul><li><p>\u79fb\u9664\u5df2\u8fc7\u671f <code>url</code></p></li><li><p>\u4fee\u6539 <code>pageSizeSelectorValues</code> \u4e3a <code>pageSizeOptions</code></p></li><li><p>\u589e\u52a0 <code>showTotal</code> \u652f\u6301string\uff0c\u9ed8\u8ba4\u4e3a\uff1a<code>\u5171 {{total}} \u6761</code>\uff0c\u652f\u6301\u4e09\u4e2a\u53c2\u6570\u6a21\u5757 total\u3001range<span>0</span>\u3001range<span>1</span></p></li><li><p>\u589e\u52a0 <code>showPagination</code> \u662f\u5426\u663e\u793a\u5206\u9875\u5668</p></li><li><p>\u589e\u52a0 <code>noResult</code> \u65e0\u6570\u636e\u65f6\u663e\u793a\u5185\u5bb9</p></li><li><p>\u589e\u52a0 <code>loadingDelay</code> \u5ef6\u8fdf\u663e\u793a\u52a0\u8f7d\u6548\u679c\u7684\u65f6\u95f4\uff08\u9632\u6b62\u95ea\u70c1\uff09</p></li><li><p>\u589e\u52a0 <code>header</code> \u8868\u683c\u6807\u9898</p></li><li><p>\u589e\u52a0 <code>load(pi = 1, extraParams?: any)</code> \u65b9\u6cd5\u5141\u8bb8\u76f4\u63a5\u4f20\u9012 <code>extraParams</code> \u503c</p></li><li><p>\u589e\u52a0 <code>reset(extraParams?: any)</code> \u65b9\u6cd5\u5141\u8bb8\u76f4\u63a5\u4f20\u9012 <code>extraParams</code> \u503c</p></li><li><p>\u589e\u52a0 <code>expand</code> \u53ef\u5c55\u5f00\uff0c\u5f53\u6570\u636e\u6e90\u4e2d\u5305\u62ec <code>expand</code> \u8868\u793a\u5c55\u5f00\u72b6\u6001</p></li><li><p>\u5217\u63cf\u8ff0</p><pre class="hljs language-null"><code>\t- \u589e\u52a0 `type: link`\u3001`click` \u94fe\u63a5\n\t- \u589e\u52a0 `default` \u5f53\u4e0d\u5b58\u5728\u6570\u636e\u65f6\u4ee5\u9ed8\u8ba4\u503c\u66ff\u4ee3\n\t- \u589e\u52a0 `fixed: left | right` \u56fa\u5b9a\u5de6\u53f3\u5217\n\t- \u589e\u52a0 `renderTitle` \u81ea\u5b9a\u4e49\u6e32\u67d3\u6807\u9898</code></pre><ul><li><p>\u6309\u94ae\u7ec4 <code>SimpleTableButton</code></p><ul><li><p>\u589e\u52a0 <code>if</code> \u81ea\u5b9a\u4e49\u6761\u4ef6\u8868\u8fbe\u5f0f</p></li><li><p>\u4fee\u6539 <code>click</code> \u4e2d <code>type=modal</code> \u53ea\u4f1a\u5728\u5f53\u6709\u4f20\u56de\u503c\u65f6\u624d\u4f1a\u89e6\u53d1\u56de\u8c03</p></li></ul></li></ul></li></ul><h2 id="@delon/auth">@delon/auth<a onclick="window.location.hash = \'@delon/auth\'" class="anchor">#</a></h2><ul><li><p>\u4e0d\u518d\u652f\u6301 <code>forRoot()</code> \u53c2\u6570\u53d8\u66f4\uff0c\u7ec6\u8282\u89c1 <a href="/docs/auth" data-url="/docs/auth">\u7528\u6237\u8ba4\u8bc1</a></p></li><li><p><code>AuthOptions</code> \u6362\u6210 <code>DelonAuthConfig</code></p><ul><li><p><code>ignores</code> \u53ea\u652f\u6301\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u65e0\u987b\u53d7\u9650\u4e8ecli\u7684BUG\u800c\u4f7f\u7528\u5b57\u7b26\u4e32\u66ff\u4ee3</p></li></ul></li></ul><h2 id="@delon/cache">@delon/cache<a onclick="window.location.hash = \'@delon/cache\'" class="anchor">#</a></h2><ul><li><p><code>expire</code> \u7edf\u4e00\u5355\u4f4d\u4e3a\u79d2\uff0c\u5e76\u4fee\u6539\u4e3a <code>number</code> \u7c7b\u578b</p></li></ul><h2 id="ng-zorro-antd-extra-\u6307\u5f15">ng-zorro-antd-extra \u6307\u5f15<a onclick="window.location.hash = \'ng-zorro-antd-extra-\u6307\u5f15\'" class="anchor">#</a></h2><h3 id="nz-list">nz-list<a onclick="window.location.hash = \'nz-list\'" class="anchor">#</a></h3><ul><li><p><code><ng-template #item></code> \u9700\u6307\u5b9a <code>[nzRenderItem]="item"</code> <em>6to7</em></p></li><li><p><code><ng-template #loadMore></code> \u9700\u6307\u5b9a <code>[nzLoadMore]="loadMore"</code> <em>6to7</em></p></li><li><p><code><ng-template #pagination></code> \u9700\u6307\u5b9a <code>[nzPagination]="pagination"</code> <em>6to7</em></p></li><li><p><code>nz-list-item</code></p><ul><li><p><code>nz-list-item-action</code> \u66ff\u6362\u6210 <code><ng-template #op1></code> \u5e76\u6307\u5b9a <code>[nzActions]="[op1]"</code> \u5c5e\u6027<strong>\u6570\u7ec4</strong>\u503c</p></li></ul></li></ul><h3 id="nz-cart">nz-cart<a onclick="window.location.hash = \'nz-cart\'" class="anchor">#</a></h3><ul><li><p><code><ng-template #extra></code> \u9700\u6307\u5b9a <code>[nzExtra]="extra"</code> <em>6to7</em></p></li><li><p><code><ng-template #cover></code> \u9700\u6307\u5b9a <code>[nzCover]="cover"</code> <em>6to7</em></p></li><li><p>\u79fb\u9664 <code><ng-template #body></code> \u65e0\u987b\u6307\u5b9a <em>6to7</em></p></li><li><p>\u65e0 <code>nz-card-tab</code> \u987b\u81ea\u884c\u5b8c\u6574 <code>nz-tabset</code> \u89c1\u5b98\u7f51</p></li><li><p><code>nzNoPadding</code> \u66ff\u6362 <code>class="ant-card__body-nopadding"</code></p></li></ul><h3 id="nz-icon">nz-icon<a onclick="window.location.hash = \'nz-icon\'" class="anchor">#</a></h3><ul><li><p>\u79fb\u9664\uff0c\u4f7f\u7528 <code><i class="anticon anticon-step-backward"></i></code> \u66ff\u4ee3 <em>6to7</em></p></li></ul><h3 id="nz-divider">nz-divider<a onclick="window.location.hash = \'nz-divider\'" class="anchor">#</a></h3><ul><li><p><code>nzTitle</code> \u66ff\u6362 <code>nzText</code> <em>6to7</em></p></li></ul></article>',meta:{order:1e3,title:"1.0.x\u5347\u7ea7\u6307\u5f15",type:"Other"},toc:[{href:"#\u5199\u5728\u524d\u9762",title:"\u5199\u5728\u524d\u9762",h:2},{href:"#\u811a\u624b\u67b6",title:"\u811a\u624b\u67b6",h:2},{href:"#reuse-tab",title:"reuse-tab",h:3},{href:"#pro-header",title:"pro-header",h:3},{href:"#global-footer",title:"global-footer",h:3},{href:"#Chart",title:"Chart",h:3},{href:"#notice-icon",title:"notice-icon",h:3},{href:"#simple-table",title:"simple-table",h:3},{href:"#@delon/auth",title:"@delon/auth",h:2},{href:"#@delon/cache",title:"@delon/cache",h:2},{href:"#ng-zorro-antd-extra-\u6307\u5f15",title:"ng-zorro-antd-extra \u6307\u5f15",h:2},{href:"#nz-list",title:"nz-list",h:3},{href:"#nz-cart",title:"nz-cart",h:3},{href:"#nz-icon",title:"nz-icon",h:3},{href:"#nz-divider",title:"nz-divider",h:3}]}},demo:!1},this.codes=[]},d=function(){this.item={cols:1,urls:{"zh-CN":"docs/changelog-v6.md"},content:{"zh-CN":{content:'<article><h2 id="\u5199\u5728\u524d\u9762">\u5199\u5728\u524d\u9762<a onclick="window.location.hash = \'\u5199\u5728\u524d\u9762\'" class="anchor">#</a></h2><p>Angular6\uff08\u540e\u9762\u7b80\u79f0\uff1av6\uff09\u53d7\u9650\u4e8e Angular Cli \u7684 BUG\uff0c\u9700\u8981\u989d\u5916\u7684\u64cd\u4f5c\u624d\u80fd\u4f7f zorro \u5728 v6 \u4e2d\u4f7f\u7528\uff1b\u4e14\u5347\u7ea7\u7684\u6838\u5fc3\u5728\u4e8e <code>.angular-cli.json</code>\u3001<code>rxjs</code> \u4e24\u90e8\u5206\u3002</p><p><strong>\u6ce8\u610f\uff1a\u6ce8\u610f\uff1a\u6ce8\u610f\uff1a</strong></p><ul><li><p>\u6240\u6709 <code>v6</code> \u76f8\u5173\u7248\u672c\u5c06\u7edf\u4e00\u4ee5 <code>1.0.1-beta.*</code> \u53d1\u5e03\uff0c\u4ee5\u9632\u6b62\u7c7b\u5e93\u5728 v5 \u4e4b\u524d\u7531\u4e8e bug \u4fee\u590d\u5bfc\u81f4\u7248\u672c\u6df7\u4e71\u63a7\u5236\u3002\u540c\u65f6\uff0c\u672a\u6765\u7b2c\u4e00\u4e2a <code>1.0</code> \u7248\u672c\u4e5f\u5c06\u4ece <code>1.0.1</code> \u5f00\u59cb\uff1b\u5f53\u7136 <code>master</code> \u5206\u652f\u4e0b\u5c06\u4fdd\u6301\u6700\u65b0\u3002</p></li><li><p>\u5728\u4f60\u5347\u7ea7\u4e4b\u524d\u8bf7\u5148 <strong>\u52a1\u5fc5</strong> \u518d\u4e09\u786e\u8ba4\u5f15\u7528\u7684\u7b2c\u4e09\u65b9\u7c7b\u5e93\u662f\u5426\u5df2\u7ecf\u652f\u6301 v6\uff0c\u518d\u8003\u8651\u5347\u7ea7\u3002</p></li><li><p><code>@delon/cli</code> \u4e0d\u652f\u6301 v6\uff0c\u540e\u7eed\u4f1a\u6709 <code>ng add</code> \u652f\u6301</p></li><li><p>v6 \u76f8\u5173\u53d8\u66f4\u5206\u4e3a\u4e24\u4e2a Commit\uff0c\u53ef\u4ee5\u6839\u636e\u4ed6\u4eec\u4e86\u89e3\u5177\u4f53\u7684\u53d8\u66f4\u5185\u5bb9</p><ul><li><p>\u4e3b\u8981\u7ed3\u6784\uff1a<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/7927d48395755ecde8d0c4255be63011aef74d8c" data-url="https://github.com/cipchk/ng-alain/commit/7927d48395755ecde8d0c4255be63011aef74d8c">7927d4</a></p></li><li><p>\u793a\u4f8b\u9875\uff1a<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/47a458bc974d05c83b3d07b59caae848884b2fdf" data-url="https://github.com/cipchk/ng-alain/commit/47a458bc974d05c83b3d07b59caae848884b2fdf">47a458</a></p></li></ul></li></ul><h2 id="\u79fb\u9664\u7684\u90e8\u5206">\u79fb\u9664\u7684\u90e8\u5206<a onclick="window.location.hash = \'\u79fb\u9664\u7684\u90e8\u5206\'" class="anchor">#</a></h2><ul><li><p>hmr \u5176\u5b9e\u652f\u6301\u7684\u5e76\u4e0d\u662f\u5f88\u53cb\u597d\uff0c\u9664\u4e86\u5bf9 less \u7684\u652f\u6301\uff0c\u56e0\u6b64 v6 \u4e0d\u518d\u63d0\u4f9b hmr \u76f8\u5173\u3002</p></li><li><p>\u79fb\u9664 <code>iconfont</code> \u793a\u4f8b\u9875</p></li></ul><h2 id="\u5347\u7ea7Angular\u9879\u76ee">\u5347\u7ea7Angular\u9879\u76ee<a onclick="window.location.hash = \'\u5347\u7ea7Angular\u9879\u76ee\'" class="anchor">#</a></h2><h3 id="1\u3001\u524d\u63d0">1\u3001\u524d\u63d0<a onclick="window.location.hash = \'1\u3001\u524d\u63d0\'" class="anchor">#</a></h3><p>\u5220\u9664 <code>node_modules</code>\u3001<code>package-lock.json</code> \u6587\u4ef6\u3002</p><h3 id="2\u3001package.json">2\u3001package.json<a onclick="window.location.hash = \'2\u3001package.json\'" class="anchor">#</a></h3><p>\u4fee\u6539 <code>package.json</code> \u7c7b\u5e93\u7248\u672c\u53f7\u4e3a\u6700\u65b0\uff0c\u82e5\u4f60\u4e0d\u6e05\u695a\u5982\u4f55\u4fee\u6539\uff0c\u53ef\u4ee5\u76f4\u63a5\u4f7f\u7528 <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/package.json" data-url="https://github.com/cipchk/ng-alain/blob/master/package.json">ng-alain</a> \u73b0\u6709\u7684 <code>dependencies</code>\u3001<code>devDependencies</code> \u8282\u70b9\u53ef\u76f4\u63a5\u590d\u5236\uff0c\u518d\u5c06\u4f60\u53ef\u80fd\u5f15\u7528\u989d\u5916\u7c7b\u5e93\u52a0\u4e0a\u5373\u53ef\u3002</p><p>\u6700\u540e\uff0c\u5b89\u88c5\u4f9d\u8d56\u5305\uff1a</p><pre class="hljs language-bash"><code>npm i</code></pre><h3 id="3\u3001ng-update">3\u3001ng update<a onclick="window.location.hash = \'3\u3001ng-update\'" class="anchor">#</a></h3><p>\u6267\u884c\uff1a</p><pre class="hljs language-bash"><code>ng update @angular/cli</code></pre><p>\u8fd9\u4e2a\u65f6\u95f4\u53ef\u80fd\u4f1a\u6709\u4e9b\u957f\uff0c\u4f46\u4e00\u822c\u7684\u7ed3\u679c\u4e3a\uff1a</p><pre class="hljs language-null"><code>DELETE .angular-cli.json\nCREATE angular.json (5008 bytes)\nUPDATE karma.conf.js (1077 bytes)\nUPDATE src/tsconfig.spec.json (788 bytes)\nUPDATE package.json (3775 bytes)\nUPDATE tslint.json (3230 bytes)</code></pre><h3 id="4\u3001\u7ed3\u6784\u8c03\u6574">4\u3001\u7ed3\u6784\u8c03\u6574<a onclick="window.location.hash = \'4\u3001\u7ed3\u6784\u8c03\u6574\'" class="anchor">#</a></h3><p>v6 \u7684\u6587\u4ef6\u7ed3\u6784\u6709\u70b9\u5c0f\u8c03\u6574\uff0c\u867d\u7136\u4e0d\u5f71\u54cd\uff0c\u4f46\u4f60\u4f9d\u7136\u9700\u8981\u77e5\u9053\u8fd9\u4e9b\u53d8\u5316\u3002</p><ul><li><p><code>.angular-cli.json</code> \u53d8\u6210 <code>angular.json</code></p></li><li><p>\u82e5\u5e72\u7531\u6839\u76ee\u5f55\u8f6c\u79fb\u81f3 <code>src</code> \u76ee\u5f55\u4e2d</p><ul><li><p><code>./karma.js</code> \u653e\u5165 <code>src</code></p></li><li><p><code>package.json</code> \u7684 <code>browserslist</code> \u8282\u70b9\u8f6c\u6362\u6210 <code>./src/browserslist</code> \u6587\u4ef6\u5f62\u5f0f</p></li></ul></li><li><p><code>e2e</code> \u76ee\u5f55\u53d8\u5316</p><ul><li><p><code>./protractor.conf.js</code> \u653e\u5165 <code>e2e</code></p></li><li><p><code>e2e</code> \u76ee\u5f55\u589e\u52a0 <code>src</code> \u76ee\u5f55\u4e14\u5c06\u6587\u4ef6\u8f6c\u79fb\u81f3\u8be5\u76ee\u5f55\u4e2d\uff0c\u4e14\u6ce8\u610f\u76f8\u5173\u8def\u5f84</p></li></ul></li></ul><h3 id="5\u3001angular.json">5\u3001angular.json<a onclick="window.location.hash = \'5\u3001angular.json\'" class="anchor">#</a></h3><p><code>angular.json</code> \u662f\u7531 <code>.angular-cli.json</code> \u8f6c\u6362\u800c\u6765\u7684\uff0c\u5b9e\u8d28\u7684\u5185\u5bb9\u4f9d\u7136\u8fd8\u662f <code>.angular-cli.json</code>\uff0c\u53ea\u662f\u6362\u4e86\u53e6\u4e00\u79cd\u5199\u6cd5\uff0c\u4e14\u66f4\u5570\u55e6\uff0c\u6709\u5173\u7ec6\u8282\u6211\u4e0d\u7ec6\u8bf4\uff0c\u4e00\u822c\u901a\u8fc7 <code>ng update</code> \u5f97\u5230\u7684\u662f\u53ef\u7528\u7684\u3002</p><p>\u4e00\u4e9b\u7ec6\u8282\uff1a</p><ul><li><p>\u79fb\u9664 <code>@delon/cli</code> \u76f8\u5173\u7684 <code>schematics</code> \u8282\u70b9</p></li></ul><h3 id="6\u3001less-\u7684\u4fee\u590d">6\u3001less \u7684\u4fee\u590d<a onclick="window.location.hash = \'6\u3001less-\u7684\u4fee\u590d\'" class="anchor">#</a></h3><p>\u53d7\u9650\u4e8e <a target="_blank" href="https://github.com/angular/angular-cli/issues/10430" data-url="https://github.com/angular/angular-cli/issues/10430">#10430</a>\uff0c\u9700\u8981\u5c06 less \u5f3a\u5236\u964d\u7ea7\u4e3a <code>2.7</code>\uff0c\u5728 <code>package.json</code> \u7684 <code>devDependencies</code> \u589e\u52a0\uff1a</p><pre class="hljs language-null"><code>devDependencies: [\n "less": "~2.7.0",\n "less-loader": "~4.0.0"\n]</code></pre><p><strong>styles.less</strong></p><p>\u4fee\u6539 <code>./src/styles.less</code> \u7684\u7b2c\u4e09\u65b9\u7c7b\u5e93\u7684\u5f15\u7528\u65b9\u5f0f\uff0c\u5e94\u8be5\u8bf4\u76ee\u5f55\u5e76\u4e0d\u652f\u6301 <code>~@delon</code> \u8fd9\u79cd\u5199\u6cd5\uff0c\u7edf\u4e00\u91c7\u7528 <code>node_modules/@delon</code>\uff1a</p><pre class="hljs language-$1"><code>@import \'~@delon/theme/styles/index\';\n@import \'~@delon/abc/index\';\n// \u66ff\u6362\u6210\uff1a\n@import \'node_modules/@delon/theme/styles/index\';\n@import \'node_modules/@delon/abc/index\';</code></pre><h2 id="\u5347\u7ea7-rxjs6">\u5347\u7ea7 rxjs6<a onclick="window.location.hash = \'\u5347\u7ea7-rxjs6\'" class="anchor">#</a></h2><h3 id="zorro">zorro<a onclick="window.location.hash = \'zorro\'" class="anchor">#</a></h3><p>\u76ee\u524d zorro \u8fd8\u672a\u5347\u7ea7 v6\uff0c\u56e0\u6b64\uff0c\u4f60\u8fd8\u5fc5\u987b\u5b89\u88c5\uff1a</p><pre class="hljs language-bash"><code>npm i --save rxjs-compat</code></pre><h3 id="rxjs">rxjs<a onclick="window.location.hash = \'rxjs\'" class="anchor">#</a></h3><p>rxjs \u63d0\u4f9b\u4e86 <a target="_blank" href="https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#observable-classes" data-url="https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#observable-classes">MIGRATION</a>\uff0c\u91cd\u70b9\u8fd8\u662f <code>rxjs/Observable</code> \u4e4b\u7c7b\u7684\u5168\u90e8\u7edf\u4e00\u4f7f\u7528 <code>rxjs</code>\u3002\u603b\u7ed3\u65e0\u975e\u5c31\u662f\u6240\u6709 <code>rxjs</code> \u7684\u5bfc\u5165\u73b0\u5728\u53ea\u9700\u8981\u4e24\u79cd\u98ce\u683c\uff1a</p><pre class="hljs language-$1"><code>import { Observable, BehaviorSubject } from \'rxjs\';\nimport { filter } from \'rxjs/operators\';</code></pre></article>',meta:{order:990,title:"Angualr6\u5347\u7ea7\u6307\u5f15",type:"Other"},toc:[{href:"#\u5199\u5728\u524d\u9762",title:"\u5199\u5728\u524d\u9762",h:2},{href:"#\u79fb\u9664\u7684\u90e8\u5206",title:"\u79fb\u9664\u7684\u90e8\u5206",h:2},{href:"#\u5347\u7ea7Angular\u9879\u76ee",title:"\u5347\u7ea7Angular\u9879\u76ee",h:2},{href:"#1\u3001\u524d\u63d0",title:"1\u3001\u524d\u63d0",h:3},{href:"#2\u3001package.json",title:"2\u3001package.json",h:3},{href:"#3\u3001ng-update",title:"3\u3001ng update",h:3},{href:"#4\u3001\u7ed3\u6784\u8c03\u6574",title:"4\u3001\u7ed3\u6784\u8c03\u6574",h:3},{href:"#5\u3001angular.json",title:"5\u3001angular.json",h:3},{href:"#6\u3001less-\u7684\u4fee\u590d",title:"6\u3001less \u7684\u4fee\u590d",h:3},{href:"#\u5347\u7ea7-rxjs6",title:"\u5347\u7ea7 rxjs6",h:2},{href:"#zorro",title:"zorro",h:3},{href:"#rxjs",title:"rxjs",h:3}]}},demo:!1},this.codes=[]},h=function(){this.item={cols:1,urls:{"zh-CN":"docs/changelog.md"},content:{"zh-CN":{content:'<article><h3 id="1.5.2">1.5.2<a onclick="window.location.hash = \'1.5.2\'" class="anchor">#</a></h3><p><code>2018-11-19</code></p><ul><li><p><strong>module:sf:checkbox:</strong> \u4fee\u590d\u4e22\u5931 title \u95ee\u9898 <a target="_blank" href="https://github.com/ng-alain/delon/issues/259" data-url="https://github.com/ng-alain/delon/issues/259">#259</a></p></li><li><p><strong>module:sf:checkbox:</strong> \u4fee\u590d\u5ef6\u8fdf\u72b6\u6001\u95ee\u9898</p></li><li><p><strong>module:sf:upload:</strong> \u4fee\u590d size \u5c5e\u6027\u88ab\u5360\u7528</p></li><li><p><strong>module:st:</strong> \u4fee\u590d\u5728ie\u3001edge\u4e0b\u4f1a\u6e32\u67d3null\u5b57\u7b26</p></li><li><p><strong>module:page-header:</strong> \u4fee\u590d\u8def\u7531\u53d8\u66f4\u65f6\u5e94\u5237\u65b0\u5bfc\u822a\u680f</p></li></ul><h3 id="1.5.1">1.5.1<a onclick="window.location.hash = \'1.5.1\'" class="anchor">#</a></h3><p><code>2018-11-1</code></p><ul><li><p><strong>module:sf:</strong> fix attempt to use a destroyed error (<a target="_blank" href="https://github.com/ng-alain/delon/issues/248" data-url="https://github.com/ng-alain/delon/issues/248">#248</a>) (<a target="_blank" href="https://github.com/ng-alain/delon/commit/3e470e7" data-url="https://github.com/ng-alain/delon/commit/3e470e7">3e470e7</a>)</p></li><li><p><strong>module:theme:</strong> fix grey color values (<a target="_blank" href="https://github.com/ng-alain/delon/issues/249" data-url="https://github.com/ng-alain/delon/issues/249">#249</a>) (<a target="_blank" href="https://github.com/ng-alain/delon/commit/6234538" data-url="https://github.com/ng-alain/delon/commit/6234538">6234538</a>)</p></li></ul><h3 id="1.5.0">1.5.0<a onclick="window.location.hash = \'1.5.0\'" class="anchor">#</a></h3><p><code>2018-10-25</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u540c\u6b65 ng-zorro-antd 1.7.1\uff0c\u53d7\u9650\u4e8e\u56fe\u6807\u53d8\u66f4\uff0c\u90e8\u5206\u9876\u90e8\u5c0f\u56fe\u6807\u9700\u8981\u989d\u5916\u589e\u52a0 <code>item-icon</code> \u6837\u5f0f\uff0c\u53c2\u8003 <a target="_blank" href="https://github.com/ng-alain/ng-alain/commit/e76e6312b748aeabb6b22cd7d96582333e8a75cf" data-url="https://github.com/ng-alain/ng-alain/commit/e76e6312b748aeabb6b22cd7d96582333e8a75cf">e76e631</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u65b0\u589e <code>icon</code> \u56fe\u6807\u63d2\u4ef6\uff0c\u81ea\u52a8\u5206\u6790\u5e76\u751f\u6210\u56fe\u6807\u5f15\u5bfc\u6587\u4ef6 <a href="https://ng-alain.com/cli/plugin#icon" data-url="https://ng-alain.com/cli/plugin#icon">\u6587\u6863</a></p></li><li><p>\u4fee\u590d <code>readOnly</code> \u90e8\u5206\u5c0f\u90e8\u4ef6\u65e0\u6cd5\u7981\u7528 <a target="_blank" href="https://github.com/ng-alain/delon/issues/211" data-url="https://github.com/ng-alain/delon/issues/211">#211</a></p></li><li><p>\u4fee\u590d\u8303\u56f4\u65e5\u671f\u5c0f\u90e8\u4ef6 <code>nzShowTime</code> \u4e22\u5931 <a target="_blank" href="https://github.com/ng-alain/delon/issues/219" data-url="https://github.com/ng-alain/delon/issues/219">#219</a></p></li><li><p>\u4fee\u590d\u91cd\u590d\u8c03\u7528\u53d8\u66f4\u68c0\u6d4b <a target="_blank" href="https://github.com/ng-alain/delon/issues/220" data-url="https://github.com/ng-alain/delon/issues/220">#220</a></p></li><li><p>\u4fee\u590d Checkbox \u5c0f\u90e8\u4ef6\u9519\u4f4d <a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/725" data-url="https://github.com/ng-alain/ng-alain/issues/725">#725</a></p></li></ul></li></ul><h3 id="1.4.5">1.4.5<a onclick="window.location.hash = \'1.4.5\'" class="anchor">#</a></h3><p><code>2018-9-29</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d <code>_HttpClient</code> \u5bf9\u8c61 <code>param</code> \u53c2\u6570\u89e3\u6790\u4e0d\u6807\u51c6\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/694" data-url="https://github.com/ng-alain/ng-alain/issues/694">#694</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u4fee\u590d <code>cascader</code> \u5c0f\u90e8\u4ef6\u4e0d\u652f\u6301 <code>showSearch</code> \u53c2\u6570\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/695" data-url="https://github.com/ng-alain/ng-alain/issues/695">#695</a></p></li></ul></li><li><p>@delon/util</p><ul><li><p>\u4fee\u590d <code>getTimeDistance</code> \u53c2\u6570 <code>-today</code> \u5e94\u662f\u6628\u5929\u81f3\u4eca\u5929\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/696" data-url="https://github.com/ng-alain/ng-alain/issues/696">#696</a></p></li></ul></li></ul><h3 id="1.4.4">1.4.4<a onclick="window.location.hash = \'1.4.4\'" class="anchor">#</a></h3><p><code>2018-9-22</code></p><ul><li><p>@delon/form</p><ul><li><p>\u4fee\u590d\u56fa\u5b9a\u6807\u7b7e\u5bbd\u5ea6\u65f6\u5e03\u5c40\u88ab\u6324\u5151</p></li><li><p>\u4fee\u590d\u6587\u672c\u6846\u5728 Safari \u6d4f\u89c8\u5668\u4e0b\u4f1a\u91cd\u590d\u5f55\u5165\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/651" data-url="https://github.com/ng-alain/ng-alain/issues/651">#651</a></p></li><li><p>\u4fee\u590d\u5355\u591a\u9009\u6846\u7ec4 <code>readOnly</code> \u65e0\u6548\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/ng-alain/delon/issues/167" data-url="https://github.com/ng-alain/delon/issues/167">#167</a></p></li></ul></li></ul><h3 id="1.4.3">1.4.3<a onclick="window.location.hash = \'1.4.3\'" class="anchor">#</a></h3><p><code>2018-9-16</code></p><ul><li><p>@delon/form</p><ul><li><p>\u4fee\u590d select \u5c0f\u90e8\u4ef6\u5728 Search \u6a21\u5f0f\u4e0b\u4e0d\u652f\u6301 <code>width</code> \u95ee\u9898</p></li><li><p>\u4fee\u590d select \u5c0f\u90e8\u4ef6\u82e5\u5b58\u5728\u521d\u59cb\u503c\u5219\u65e0\u6cd5\u6e05\u7a7a\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/674" data-url="https://github.com/ng-alain/ng-alain/issues/674">#674</a></p></li><li><p>\u4fee\u590d number \u7c7b\u578b\u82e5\u5b58\u5728\u521d\u59cb\u503c\u5219\u65e0\u6cd5\u6e05\u7a7a\uff0c<a target="_blank" href="https://github.com/ng-alain/ng-alain/issues/675" data-url="https://github.com/ng-alain/ng-alain/issues/675">#675</a></p></li></ul></li></ul><h3 id="1.4.2">1.4.2<a onclick="window.location.hash = \'1.4.2\'" class="anchor">#</a></h3><p><code>2018-9-9</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d\u672a\u5bfc\u51fa <code>AdDescListConfig</code>\uff0c<a target="_blank" href="https://github.com/ng-alain/delon/issues/154" data-url="https://github.com/ng-alain/delon/issues/154">#154</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u4fee\u590d <code>build of undefined</code></p></li></ul></li></ul><h3 id="1.4.1">1.4.1<a onclick="window.location.hash = \'1.4.1\'" class="anchor">#</a></h3><p><code>2018-9-8</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d\u672a\u5bfc\u51fa <code>DelonThemeConfig</code> \u5e76\u66f4\u540d\u4e3a <code>AlainThemeConfig</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/668" data-url="https://github.com/cipchk/ng-alain/issues/668">#668</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>exception</code> \u65e0\u6548\u6837\u5f0f\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/147" data-url="https://github.com/cipchk/delon/issues/147">#147</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u4fee\u590d <code>mode: search</code> \u6a21\u5f0f\u4e0b\u65e0\u6cd5\u81ea\u5b9a\u4e49\u6587\u672c\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/146" data-url="https://github.com/cipchk/delon/issues/146">#146</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u79fb\u9664 less \u964d\u7ea7</p></li></ul></li></ul><h3 id="1.4.0">1.4.0<a onclick="window.location.hash = \'1.4.0\'" class="anchor">#</a></h3><p><code>2018-9-4</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u53d6\u6d88 less \u964d\u7ea7\uff0c\u53c2\u8003 <a target="_blank" href="https://github.com/cipchk/ng-alain/commit/36668e" data-url="https://github.com/cipchk/ng-alain/commit/36668e">36668e</a> \u53d8\u66f4\u7eaa\u5f55</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u589e\u52a0 <code>simple-table</code> \u6240\u6709\u91cd\u7f6e\u65b9\u6cd5\u5bf9 <code>extraParams</code> \u5408\u5e76\u9009\u9879\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/652" data-url="https://github.com/cipchk/ng-alain/issues/652">#652</a></p></li><li><p>\u4fee\u590d <code>reuse-tab</code> \u6700\u5927\u6807\u7b7e\u8d85\u9650\u65f6\u5f15\u8d77\u9ad8\u4eae\u9519\u4f4d\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/647" data-url="https://github.com/cipchk/ng-alain/issues/647">#647</a></p></li><li><p>\u79fb\u9664 <code>exception</code> \u65e0\u6548 <code>actions</code> \u5c5e\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/658" data-url="https://github.com/cipchk/ng-alain/issues/658">#658</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u589e\u52a0 <code>patch</code>\u3001<code>put</code> \u65b9\u6cd5\u7684\u6269\u5c55\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/662" data-url="https://github.com/cipchk/ng-alain/issues/662">#662</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0 <code>tree-select</code> \u5c0f\u90e8\u4ef6</p></li></ul></li></ul><blockquote><p>\u6b64\u7248\u672c\u5c06\u662f <a href="https://next.ng-alain.com/" data-url="https://next.ng-alain.com/">2.x</a> \u6700\u540e\u4e00\u4e2a\u6b21\u7248\u672c\u53f7</p></blockquote><h3 id="1.3.3">1.3.3<a onclick="window.location.hash = \'1.3.3\'" class="anchor">#</a></h3><p><code>2018-8-25</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d <code>ModalHelper</code> \u53ef\u80fd\u4f1a\u5f15\u8fdb <code>ngOriginalError</code> \u5f02\u5e38\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/125" data-url="https://github.com/cipchk/delon/issues/125">#125</a> <a target="_blank" href="https://github.com/cipchk/ng-alain/issues/626" data-url="https://github.com/cipchk/ng-alain/issues/626">#626</a></p></li><li><p>\u4fee\u590d\u83dc\u5355 <code>group</code> \u5c5e\u6027\u4e3a <code>false</code> \u65f6\u5e94\u4e0d\u663e\u793a\u7ec4\u540d\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/137" data-url="https://github.com/cipchk/delon/issues/137">#137</a> <a target="_blank" href="https://github.com/cipchk/delon/issues/140" data-url="https://github.com/cipchk/delon/issues/140">#140</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u653e\u5bbd\u624b\u673a\u53f7\u683c\u5f0f\u6821\u9a8c\u89c4\u5219\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/645" data-url="https://github.com/cipchk/ng-alain/issues/645">#645</a></p></li><li><p>\u4fee\u590d <code>placeholder</code> \u5c5e\u6027\u652f\u6301\u5b57\u7b26\u4e32\u6570\u7ec4\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/142" data-url="https://github.com/cipchk/delon/issues/142">#142</a></p></li></ul></li></ul><h3 id="1.3.2">1.3.2<a onclick="window.location.hash = \'1.3.2\'" class="anchor">#</a></h3><p><code>2018-8-19</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u53d6\u6d88\u65f6\u65e0\u6cd5\u6e05\u9664\u8fdb\u5ea6\u6761\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/f67c0c" data-url="https://github.com/cipchk/ng-alain/commit/f67c0c">f67c0c</a></p></li><li><p>\u79fb\u9664simple-line-icons\u7c7b\u5e93\uff0c\u5c3d\u53ef\u80fd\u4f7f\u7528 ng-zorro-antd \u56fe\u6807\u5e93\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/28f873" data-url="https://github.com/cipchk/ng-alain/commit/28f873">28f873</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u589e\u52a0\u65cb\u8f6c\u6837\u5f0f</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>simple-table</code> \u81ea\u5b9a\u4e49\u5217\u5237\u65b0\u65f6\u4e22\u5931\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/622" data-url="https://github.com/cipchk/ng-alain/issues/622">#622</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u4fee\u590d <code>date</code> \u5c0f\u90e8\u4ef6\u65e0\u6548\u5c5e\u6027 <code>displayFormat</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/640" data-url="https://github.com/cipchk/ng-alain/issues/640">#640</a></p></li></ul></li></ul><h3 id="1.3.1">1.3.1<a onclick="window.location.hash = \'1.3.1\'" class="anchor">#</a></h3><p><code>2018-8-7</code></p><ul><li><p>@delon/abc</p><ul><li><p><code>simple-table</code></p><ul><li><p>\u4fee\u590d\u56fa\u5b9a\u5217\u4e09\u4e2a\u4ee5\u4e0a\u65f6\u5bbd\u5ea6\u8ba1\u7b97\u4e0d\u6b63\u786e\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/132" data-url="https://github.com/cipchk/delon/issues/132">#132</a></p></li><li><p>\u4fee\u590d <code>type: "del"</code> \u65e0\u6cd5\u89e6\u53d1\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/614" data-url="https://github.com/cipchk/ng-alain/issues/614">#614</a></p></li></ul></li></ul></li></ul><h3 id="1.3.0">1.3.0<a onclick="window.location.hash = \'1.3.0\'" class="anchor">#</a></h3><p><code>2018-8-4</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0 <code>ng-zorro-version</code> \u7248\u672c\u53f7\u81f3 <code>body</code> \u5143\u7d20\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/a36b23" data-url="https://github.com/cipchk/ng-alain/commit/a36b23">a36b23</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code></p><ul><li><p>\u65b0\u589e\u5355\u3001\u53cc\u51fb\u884c\u56de\u8c03\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/607" data-url="https://github.com/cipchk/ng-alain/issues/607">#607</a></p></li><li><p>\u4fee\u590d\u5207\u6362\u8bed\u8a00\u65e0\u6cd5\u81ea\u52a8\u5237\u65b0\u5217\u540d</p></li><li><p>\u4fee\u590d <code>reset()</code> \u65b9\u6cd5\u6ca1\u6709\u6e05\u9664\u5355\u9009\u3001\u591a\u9009\u3001\u8fc7\u6ee4\u3001\u987a\u5e8f\u72b6\u6001\u503c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/610" data-url="https://github.com/cipchk/ng-alain/issues/610">#610</a></p></li><li><p>\u4fee\u590d\u591a\u6392\u5e8f\u53d6\u6d88\u5176\u4e2d\u4e00\u9879\u65f6\u6392\u5e8f\u6570\u636e\u4e22\u5931</p></li></ul></li><li><p>\u65b0\u589e <code>trend</code> \u53cd\u663e\u989c\u8272\u5c5e\u6027 <code>reverseColor</code></p></li><li><p>\u4fee\u590d <code>page-header</code> \u5207\u6362\u8bed\u8a00\u65e0\u6cd5\u81ea\u52a8\u5237\u65b0\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/598" data-url="https://github.com/cipchk/ng-alain/issues/598">#598</a></p></li><li><p>\u4fee\u590d <code>sidebar-nav</code> \u5c0f\u5c4f\u5e55\u4e0b\u4ea7\u751f ExpressionChangedAfterItHasBeenCheckedError \u5f02\u5e38\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/606" data-url="https://github.com/cipchk/ng-alain/issues/606">#606</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u65b0\u589e <code>SimpleGuard</code>\u3001<code>JWTGuard</code> Token\u6709\u6548\u6388\u6743\u5b88\u536b\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/127" data-url="https://github.com/cipchk/delon/issues/127">#127</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u4fee\u590d <code>readOnly</code> \u53ef\u7f16\u8f91\u72b6\u6001\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/604" data-url="https://github.com/cipchk/ng-alain/issues/604">#604</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u540c\u6b65 ng-zorro-antd 1.3.0\uff0c\u65b0\u589e Drawer \u62bd\u5c49\u7ec4\u4ef6</p></li></ul></li></ul><h3 id="1.2.0">1.2.0<a onclick="window.location.hash = \'1.2.0\'" class="anchor">#</a></h3><p><code>2018-7-27</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0 <code>ng-alain-version</code> \u7248\u672c\u53f7\u81f3 <code>body</code> \u5143\u7d20\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/3e1966" data-url="https://github.com/cipchk/ng-alain/commit/3e1966">3e1966</a></p></li><li><p>\u5347\u7ea7\u81f3 Angular 6.1.x \u7248\u672c\u53f7\uff0c\u652f\u6301 typescript 2.9.x\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/d0adcd" data-url="https://github.com/cipchk/ng-alain/commit/d0adcd">d0adcd</a></p></li><li><p>\u91cd\u6784\u5f15\u7528 <code>node_modules/@delon</code> \u5f00\u5934\u7684\u6837\u5f0f\u8def\u5f84\u4e3a <code>~@delon</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/67c771" data-url="https://github.com/cipchk/ng-alain/commit/67c771">67c771</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u589e\u52a0 <code>VERSION</code> \u7248\u672c\u53f7</p></li></ul></li><li><p>Schematics</p><ul><li><p>\u4fee\u590d <code>ng add ng-alain</code> \u5728 Angular Cli 6.1.x \u4e0b\u65e0\u6cd5\u8fd0\u884c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/601" data-url="https://github.com/cipchk/ng-alain/issues/601">#601</a></p></li></ul></li></ul><h3 id="1.1.5">1.1.5<a onclick="window.location.hash = \'1.1.5\'" class="anchor">#</a></h3><p><code>2018-7-22</code></p><ul><li><p>\u811a\u624b\u67b6\uff0c\u79fb\u9664 Docker \u6587\u4ef6\uff0c\u53ef\u901a\u8fc7 <a href="https://ng-alain.com/cli/plugin#docker" data-url="https://ng-alain.com/cli/plugin#docker">docker</a> \u63d2\u4ef6\u5b89\u88c5\u652f\u6301</p></li><li><p>@delon/theme</p><ul><li><p>\u91cd\u6784 <code>styles</code> \u76ee\u5f55\u7ed3\u6784</p></li><li><p>\u65b0\u589e <code>DelonThemeConfig</code> \u7edf\u4e00\u5bf9 <code>_HttpClient</code> \u8bbe\u7f6e\u7a7a\u503c\u3001\u65f6\u95f4\u5904\u7406\u65b9\u5f0f</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>page-header</code> \u65e0\u6cd5\u89e3\u6790\u5305\u542b\u67e5\u8be2\u53c2\u6570\u95ee\u9898</p></li><li><p>\u4fee\u590d <code>pip</code> \u65e0\u56fe\u4f8b\u65f6\u767e\u5206\u6bd4\u663e\u793a\u4e0d\u6b63\u786e\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/578" data-url="https://github.com/cipchk/ng-alain/issues/578">#578</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d <code>allow_anonymous_key</code> \u5728 URL \u4e2d\u65e0\u6548\u95ee\u9898</p></li></ul></li><li><p>Schematics</p><ul><li><p>\u91cd\u6784\u6240\u6709\u4ee3\u7801</p></li><li><p>\u65b0\u589e <code>docker</code> <a href="https://ng-alain.com/cli/plugin#docker" data-url="https://ng-alain.com/cli/plugin#docker">\u63d2\u4ef6</a></p></li><li><p>\u4fee\u590d <code>ng add</code> \u82e5\u53d6\u6d88 <code>hmr</code> \u53ef\u80fd\u5bfc\u81f4\u9879\u76ee\u65e0\u6cd5\u8fd0\u884c\u95ee\u9898</p></li></ul></li></ul><h3 id="1.1.4">1.1.4<a onclick="window.location.hash = \'1.1.4\'" class="anchor">#</a></h3><p><code>2018-7-16</code></p><ul><li><p>@delon/abc</p><ul><li><p><code>page-header</code></p><ul><li><p>\u589e\u52a0 <code>title</code> \u5c5e\u6027\u652f\u6301 <code>ng-template</code></p></li><li><p><strong>BREAKING CHANGES</strong> <code>titleSync</code> \u53d8\u66f4\u4e3a <code>syncTitle</code></p></li></ul></li></ul></li><li><p>@delon/util</p><ul><li><p>\u65b0\u589e <code>ArrayService</code> \u6570\u7ec4\u64cd\u4f5c\u53ca\u4e0e\u6811\u4e4b\u95f4\u7684\u8f6c\u5316</p></li></ul></li></ul><h3 id="1.1.3">1.1.3<a onclick="window.location.hash = \'1.1.3\'" class="anchor">#</a></h3><p><code>2018-7-5</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590dHMR\u672a\u627e\u5230 module \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/c3ccfea" data-url="https://github.com/cipchk/ng-alain/commit/c3ccfea">c3ccfea</a>\uff0c<a target="_blank" href="https://github.com/gemron" data-url="https://github.com/gemron">@gemron</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u4fee\u590d\u6240\u6709\u5e03\u5c14\u7c7b\u578b\u5c0f\u90e8\u4ef6\u65e0\u6548\u503c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/557" data-url="https://github.com/cipchk/ng-alain/issues/557">#557</a></p></li><li><p>\u4fee\u590d <code>number</code> \u5c0f\u90e8\u4ef6\u672a\u6307\u5b9a placeholder \u65f6\u663e\u793a <code>undefine</code> \u95ee\u9898</p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code></p><ul><li><p>\u4fee\u590d\u4e0b\u62c9\u83dc\u5355\u6807\u7b7e\u6837\u5f0f\u98ce\u683c</p></li><li><p>\u4fee\u590d\u591a\u5b57\u6bb5\u6392\u5e8f\u65f6\u5b58\u5728 <code>undefined</code> \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/549" data-url="https://github.com/cipchk/ng-alain/issues/549">#549</a></p></li></ul></li><li><p>\u4fee\u590d <code>sidebar-nav</code> \u6536\u7f29\u65f6\u65e0\u6cd5\u6253\u5f00\u5916\u94fe\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/554" data-url="https://github.com/cipchk/ng-alain/issues/554">#554</a></p></li><li><p>\u4fee\u590d <code>page-header</code> I18n\u5207\u6362\u65f6\u672a\u540c\u6b65\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/545" data-url="https://github.com/cipchk/ng-alain/issues/545">#545</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u65b0\u589e <code>ng add</code> \u65f6\u9ed8\u8ba4\u52a0\u8f7d HMR \u63d2\u4ef6</p></li><li><p>\u4fee\u590d\u672a\u5f00\u542fHMR\u65f6\u4f9d\u7136\u52a0\u8f7d <code>hmr.ts</code> \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/547" data-url="https://github.com/cipchk/ng-alain/issues/547">#547</a></p></li></ul></li></ul><h3 id="1.1.2">1.1.2<a onclick="window.location.hash = \'1.1.2\'" class="anchor">#</a></h3><p><code>2018-6-28</code></p><ul><li><p>@delon/theme</p><ul><li><p><strong>BREAKING CHANGES</strong> \u65b0\u589e <code>ModalHelper</code> \u4e24\u4e2a\u65b0\u65b9\u6cd5 <code>create</code> \u548c <code>createStatic</code>\uff0c\u5c31\u9010\u6b65\u66ff\u4ee3 <code>open</code> \u548c <code>static</code>\uff082.0\u540e\u79fb\u9664\uff09</p></li><li><p>\u65b0\u589e\u6a21\u6001\u6846 <code>md</code>\u3001<code>xl</code> \u4e24\u79cd\u5927\u5c0f\uff0c\u6d89\u53ca <code>ModalHelper</code>\u3001<code>simpel-table</code></p></li><li><p>\u589e\u52a0 <code>modal-body-nopadding</code> \u6837\u5f0f\uff0c\u8868\u793a\u6a21\u6001\u6846\u5185\u5bb9\u533a\u57df\u65e0\u8fb9\u8ddd</p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>resue-tab</code></p><ul><li><p>\u91cd\u6784\u53f3\u51fb\u83dc\u5355\u8fc7\u671f\u65b9\u6cd5\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/106" data-url="https://github.com/cipchk/delon/issues/106">#106</a></p></li><li><p>\u65b0\u589e <code>replace</code> \u65b9\u6cd5</p></li></ul></li><li><p><code>simple-table</code></p><ul><li><p><strong>BREAKING CHANGES</strong> \u65b0\u589e\u5217\u63cf\u8ff0\u6309\u94ae <code>modal</code>\uff0c\u5c06\u9010\u6b65\u66ff\u4ee3 <code>size</code> \u548c <code>modalOptions</code> \uff082.0\u540e\u79fb\u9664\uff09</p></li><li><p>\u65b0\u589e <code>zeroIndexedOnPage</code> \u5c5e\u6027\u8868\u793a\u4ece\u540e\u7aef\u8bf7\u6c42\u65f6\u4f7f\u7528 <code>0</code> \u4e3a\u8d77\u59cb\u57fa\u9875\u7801\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/111" data-url="https://github.com/cipchk/delon/issues/111">#111</a> <a target="_blank" href="https://github.com/pholance" data-url="https://github.com/pholance">@pholance</a></p></li><li><p>\u4fee\u590d\u9759\u6001\u6570\u636e\u6e90\u65e0\u6cd5\u5207\u6362\u5206\u9875\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/524" data-url="https://github.com/cipchk/ng-alain/issues/524">#524</a></p></li></ul></li><li><p>\u4fee\u590d <code>sidebar-nav</code> \u6536\u7f29\u65f6\u5e95\u90e8\u65e0\u6cd5\u663e\u793a\u5b8c\u6574\u5b50\u83dc\u5355\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/110" data-url="https://github.com/cipchk/delon/issues/110">#110</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0 <code>ui.width</code> \u6765\u6307\u5b9a\u5b57\u6bb5\u5143\u7d20\u7684\u5927\u5c0f</p></li><li><p>\u589e\u52a0 <code>number</code> \u5c0f\u90e8\u4ef6\u652f\u6301 <code>placeholder</code></p></li><li><p>\u4fee\u590d <code>checkbox</code> \u5c0f\u90e8\u4ef6\u5e03\u5c40\u5c5e\u6027\u53d7 <code>ui.grid.span</code> \u6c61\u67d3\uff0c\u91c7\u7528\u65b0\u5c5e\u6027 <code>ui.span</code> \u8868\u793a\u5404\u9009\u6846\u5e03\u5c40\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/528" data-url="https://github.com/cipchk/ng-alain/issues/528">#528</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u79fb\u9664 <code>ng add</code> \u9ed8\u8ba4\u4f9d\u8d56 <code>rxjs-compat</code></p></li><li><p>\u4fee\u590d hmr \u5f00\u53d1\u6a21\u5f0f\u82e5\u51fa\u9519\u65f6\u65e0\u6cd5\u81ea\u52a8\u79fb\u9664\u6a21\u6001\u6846\u95ee\u9898</p></li><li><p>\u66f4\u53cb\u597d\u7684 <code>list</code> \u4e1a\u52a1\u9875</p></li></ul></li></ul><h3 id="1.1.1">1.1.1<a onclick="window.location.hash = \'1.1.1\'" class="anchor">#</a></h3><p><code>2018-6-15</code></p><ul><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>reuse-tab</code> \u53f3\u952e\u65e0\u6cd5\u6253\u5f00\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/104" data-url="https://github.com/cipchk/delon/issues/104">#104</a></p></li></ul></li></ul><h3 id="1.1.0">1.1.0<a onclick="window.location.hash = \'1.1.0\'" class="anchor">#</a></h3><p><code>2018-6-15</code></p><ul><li><p>\u540c\u6b65 ng-zorro-antd <code>1.0.0</code>\uff1a\u53ef\u79fb\u9664 <code>package.json</code> \u7684 <code>rxjs-compat</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/70c9058ac08a738a78d31b84d07a12fdb4671593" data-url="https://github.com/cipchk/ng-alain/commit/70c9058ac08a738a78d31b84d07a12fdb4671593">70c905</a></p></li><li><p>@delon/theme</p><ul><li><p>\u65b0\u589e\u6309\u94ae\u4e0e\u6309\u94ae\u3001\u6309\u94ae\u4e0e\u6c14\u6ce1\u786e\u8ba4\u6846\u3001\u6c14\u6ce1\u786e\u8ba4\u6846\u4e0e\u6c14\u6ce1\u786e\u8ba4\u6846\u4e4b\u95f4\u7684\u5c0f\u53f7\u95f4\u8ddd</p></li><li><p>\u65b0\u589e <code>width-[0-10]</code> \u767e\u5206\u6bd4\u5bbd\u5ea6</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u589e\u52a0 <code>simple-html-form</code> \u65b0\u7ec4\u4ef6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/498" data-url="https://github.com/cipchk/ng-alain/issues/498">#498</a></p></li><li><p><code>simple-table</code></p><ul><li><p><strong>BREAKING CHANGES</strong> \u79fb\u9664\u8fc7\u671f\u5217\u63cf\u8ff0\u5c5e\u6027 <code>if</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/503" data-url="https://github.com/cipchk/ng-alain/issues/503">#503</a></p></li><li><p>\u65b0\u589e <code>showPagination</code> \u53ef\u5168\u5c40\u914d\u7f6e\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/96" data-url="https://github.com/cipchk/delon/issues/96">#96</a></p></li><li><p>\u65b0\u589e\u5217\u63cf\u8ff0\u7c7b\u578b <code>tag</code></p></li></ul></li><li><p>\u65b0\u589e <code>down-file</code> \u652f\u6301 <code>content-disposition</code></p></li><li><p>\u65b0\u589e <code>ReuseTabService</code> \u7c7b <code>replace</code> \u65b9\u6cd5\uff0c\u7528\u4e8e\u66ff\u6362\u5173\u95ed\u5f53\u524d\u8def\u7531\u5e76\u5bfc\u822a\u65b0\u8def\u7531\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/99" data-url="https://github.com/cipchk/delon/issues/99">#99</a></p></li><li><p>\u4fee\u590d <code>pipe</code> \u65e0\u6548\u56fe\u4f8b\u6570\u636e\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/512" data-url="https://github.com/cipchk/ng-alain/issues/512">#512</a> <a target="_blank" href="https://github.com/kiyonlin" data-url="https://github.com/kiyonlin">@kiyonlin</a></p></li><li><p>\u4fee\u590d <code>desc-list</code> \u76f8\u540c\u7ec4\u4ef6\u95f4\u7684\u95f4\u8ddd</p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u65b0\u589e <code>format</code> \u652f\u6301 <code>id-card</code>\u3001<code>mobile</code>\u3001<code>color</code> \u7c7b\u578b\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/502" data-url="https://github.com/cipchk/ng-alain/issues/502">#502</a></p></li></ul></li><li><p>@delon/mock</p><ul><li><p>\u4fee\u590d\u5b8c\u5168\u5339\u914d\u4f18\u5148\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/508" data-url="https://github.com/cipchk/ng-alain/issues/508">#508</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u65b0\u589e <code>empty</code> \u7a7a\u7ec4\u4ef6\u9875</p></li><li><p>\u53d6\u6d88\u9ed8\u8ba4\u91c7\u7528\u6dd8\u5b9d npm\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/100" data-url="https://github.com/cipchk/delon/issues/100">#100</a></p></li><li><p>\u4fee\u590d\u90e8\u5206\u7ec6\u8282</p></li></ul></li><li><p>\u4f18\u5316API\u6587\u6863\u7ad9\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/515" data-url="https://github.com/cipchk/ng-alain/issues/515">#515</a> <a target="_blank" href="https://github.com/hejinzhi" data-url="https://github.com/hejinzhi">@hejinzhi</a></p></li></ul><h3 id="1.0.8">1.0.8<a onclick="window.location.hash = \'1.0.8\'" class="anchor">#</a></h3><p><code>2018-6-10</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u91cd\u6784\u90e8\u5206\u670d\u52a1\u7c7b angular6 \u5199\u6cd5</p></li><li><p>\u589e\u52a0\u6309\u94ae\u4e0e\u6c14\u6ce1\u786e\u8ba4\u6846\u95f4\u8ddd</p></li><li><p>\u589e\u52a0 <code>keys</code> \u652f\u6301 <code>number</code> \u6570\u5b57\u578b\u5b57\u5178\u98ce\u683c</p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>page-header</code></p><ul><li><p>\u589e\u52a0\u64cd\u4f5c\u533a\u57df\u6309\u94ae\u4e0e\u6c14\u6ce1\u786e\u8ba4\u6846\u95f4\u8ddd</p></li><li><p>\u589e\u52a0 <code>titleSync</code> \u5c5e\u6027\u7528\u4e8e\u81ea\u52a8\u540c\u6b65\u5f53\u7136\u6807\u51c6\u81f3\u6587\u6863\u6807\u9898\u3001\u8def\u7531\u590d\u7528\u7ec4\u4ef6\u6807\u51c6</p></li></ul></li><li><p><code>simple-table</code></p><ul><li><p>\u589e\u52a0\u5217\u63cf\u8ff0 <code>type: \'badge\'</code> \u5fbd\u6807</p></li><li><p>\u4fee\u590d\u9759\u6001\u6570\u636e\u6e90\u65e0\u6cd5\u5207\u6362\u5206\u9875\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/487" data-url="https://github.com/cipchk/ng-alain/issues/487">#487</a></p></li></ul></li><li><p>\u4fee\u590d <code>desc-list</code> \u4e0d\u652f\u6301 <code>*ngIf</code></p></li><li><p>\u589e\u52a0 <code>sidebar-nav</code> \u53ef\u901a\u8fc7 <code>Menu</code> \u7684 <code>linkExact</code> \u5c5e\u6027\u6765\u7cbe\u51c6\u5339\u914d\u8def\u7531\u9ad8\u4eae\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/344" data-url="https://github.com/cipchk/ng-alain/issues/344">#344</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0\u7b2c\u4e09\u65b9 Markdown \u5c0f\u90e8\u4ef6</p></li><li><p>\u4fee\u590d\u9996\u6b21\u52a0\u8f7d\u603b\u662f\u89e6\u53d1 <code>reset</code> \u4e8b\u4ef6</p></li><li><p>\u4fee\u590d <code>string</code> \u65e0\u6cd5\u6e05\u9664\u6570\u636e\u95ee\u9898</p></li><li><p>\u4fee\u590d\u81ea\u5b9a\u4e49\u5c0f\u90e8\u4ef6\u65e0\u6cd5\u4e8c\u6b21\u6e32\u67d3\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/492" data-url="https://github.com/cipchk/ng-alain/issues/492">#492</a></p></li><li><p>\u6587\u6863\u4f18\u5316\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/497" data-url="https://github.com/cipchk/ng-alain/issues/497">#497</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u65e0\u6548 <code>token</code> \u503c\u65f6\u5f15\u8d77\u89e3\u6790\u5931\u8d25\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/94" data-url="https://github.com/cipchk/delon/issues/94">#94</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u65b0\u589e <code>hmr</code> \u70ed\u66ff\u6362\u63d2\u4ef6</p></li><li><p>\u65b0\u589e\u4e1a\u52a1\u9875\uff08list\u3001view\u3001edit\uff09\u53ef\u901a\u8fc7 <code>withoutPrefix</code> \u8868\u793a\u4e0d\u5e0c\u671b\u589e\u52a0 <code>app-</code> \u9009\u62e9\u5668</p></li><li><p>\u4f18\u5316\u66f4\u667a\u80fd\u7ec4\u4ef6\u540d</p></li><li><p>\u4f18\u5316 <code>list</code> \u9875\u7684\u589e\u52a0\u6309\u94ae\u653e\u8fdb <code>page-header</code> \u7684\u64cd\u4f5c\u533a\u57df</p></li><li><p>\u4fee\u590d\u672a\u5f15\u7528 <code>ajv.js</code> \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/488" data-url="https://github.com/cipchk/ng-alain/issues/488">#488</a></p></li></ul></li></ul><h3 id="1.0.7">1.0.7<a onclick="window.location.hash = \'1.0.7\'" class="anchor">#</a></h3><blockquote><p>\u65e0\u6548\u53d1\u5e03</p></blockquote><h3 id="1.0.6">1.0.6<a onclick="window.location.hash = \'1.0.6\'" class="anchor">#</a></h3><p><code>2018-6-4</code></p><ul><li><p>@delon/abc</p><ul><li><p>simple-table</p><ul><li><p>\u4f18\u5316\u5217\u63cf\u8ff0 <code>click</code> \u82e5\u8fd4\u56de\u5b57\u7b26\u4e32\u503c\u8868\u793a\u81ea\u52a8\u5bfc\u822a\u8be5\u8def\u7531</p></li><li><p>\u4fee\u590d <code>reload</code>\u3001<code>load</code> \u7ec4\u4ef6\u65b9\u6cd5\u82e5\u4e0d\u6307\u5b9a <code>extraParams</code> \u65f6\u5e94\u4fdd\u6301\u4e0a\u4e00\u6b21\u7ed3\u679c</p></li></ul></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0 SFComponent \u7684 <code>validator</code> \u65b9\u6cd5\u7528\u4e8e\u624b\u52a8\u89e6\u53d1\u4e00\u6b21\u6821\u9a8c</p></li><li><p>\u589e\u52a0 Select \u5c0f\u90e8\u4ef6 <code>change</code> \u4e8b\u4ef6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/482" data-url="https://github.com/cipchk/ng-alain/issues/482">#482</a></p></li><li><p>\u4fee\u590d\u975e\u5fc5\u586b\u9879\u65f6\u7a7a\u503c\u4e5f\u4f1a\u88ab\u6821\u9a8c\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/91" data-url="https://github.com/cipchk/delon/issues/91">#91</a></p></li><li><p>\u4fee\u590d <code>ueditor</code> \u65e0\u6548\u53c2\u6570 <code>ngContentChange</code> \u4e3a <code>ngModelChange</code>\uff0c<a target="_blank" href="https://github.com/vellengs" data-url="https://github.com/vellengs">@vellengs</a></p></li></ul></li><li><p>@delon/util</p><ul><li><p>\u4fee\u590d <code>deepGet</code> \u8def\u5f84\u4e2d\u95f4\u7a7a\u503c\u65f6\u8fd4\u56de\u9519\u8bef\uff0c\u6b64 bug \u53d7\u5f71\u54cd <code>simple-table</code> \u82e5\u503c\u4e3a\u7a7a\u65f6\u4e5f\u4f1a\u76f8\u540c\u9519\u8bef</p></li></ul></li><li><p>Schematics</p><ul><li><p>\u65b0\u589e <code>yarn</code> \u63d2\u4ef6</p></li></ul></li></ul><h3 id="1.0.5">1.0.5<a onclick="window.location.hash = \'1.0.5\'" class="anchor">#</a></h3><p><code>2018-5-28</code></p><ul><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>simple-table</code> \u65e0\u6cd5\u5bfc\u51fa Excel \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/469" data-url="https://github.com/cipchk/ng-alain/issues/469">#469</a></p></li><li><p>\u4fee\u590d <code>file-saves</code>\u3001<code>ngx-countdown</code> \u4f9d\u8d56\u5173\u7cfb</p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0\u5168\u5c40\u914d\u7f6e <code>ui</code> \u53c2\u6570</p></li><li><p>\u589e\u52a0 <code>textarea</code> \u9ed8\u8ba4 <code>autosize: true</code></p></li><li><p>\u4fee\u590d <code>upload</code> \u65e0\u6548\u53c2\u6570 <code>name</code>\uff0c<a target="_blank" href="https://github.com/vellengs" data-url="https://github.com/vellengs">@vellengs</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u91cd\u6784 <code>ng g</code></p></li><li><p>\u65b0\u589e <code>ng g ng-alain:module</code> \u6307\u4ee4</p></li><li><p>\u65b0\u589e <code>codeStyle</code>\u3001<code>npm</code> \u63d2\u4ef6</p></li><li><p>\u4f18\u5316\u4e1a\u52a1\u6a21\u677f</p></li></ul></li></ul><h3 id="1.0.4">1.0.4<a onclick="window.location.hash = \'1.0.4\'" class="anchor">#</a></h3><p><code>2018-5-24</code></p><ul><li><p>\u540c\u6b65 ng-zorro-antd <code>0.7.1</code></p></li><li><p>@delona/theme</p><ul><li><p>\u65b0\u589e <code>SettingsService</code> \u5bf9 App\u3001User \u5b58\u50a8\u5316</p></li></ul></li><li><p>@delona/abc</p><ul><li><p>\u65b0\u589e <code>desc-list</code> \u5f53\u5185\u5bb9\u4e3a\u7a7a\u65f6\u663e\u793a <code>-</code></p></li><li><p>\u65b0\u589e <code>page-header</code> \u5c5e\u6027 <code>autoTitle</code> \u7528\u4e8e\u6839\u636e\u83dc\u5355\u6570\u636e\u81ea\u52a8\u83b7\u53d6\u6807\u9898</p></li><li><p><code>simple-table</code></p><ul><li><p>\u4fee\u590d URL \u4e0b\u5f53\u603b\u91cf\u5c0f\u4e8e\u6bcf\u9875\u6570\u91cf\u65f6\u5e94\u81ea\u52a8\u9690\u85cf\u5206\u9875\u5668</p></li><li><p>\u4fee\u590d <code>img</code> \u7c7b\u578b\u82e5\u6570\u636e\u4e0d\u5b58\u5728\u4e0d\u5e94\u8be5\u663e\u793a\u56fe\u50cf</p></li><li><p>\u4fee\u590d\u66f4\u591a\u6309\u94ae\u4e0d\u652f\u6301HTML\u53ca\u5b50\u83dc\u5355\u4e0d\u652f\u6301 <code>del</code> \u95ee\u9898</p></li><li><p>\u4fee\u590d <code>reqMehtod</code> \u62fc\u5199\u9519\u8bef\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/vellengs" data-url="https://github.com/vellengs">@vellengs</a></p></li></ul></li><li><p>\u4fee\u590d <code>reuse-tab</code> \u4f1a\u591a\u6b21\u8c03\u7528 <code>_onReuseInit</code> \u95ee\u9898</p></li><li><p>\u6027\u80fd\u4f18\u5316\u56fe\u8868\u7cfb\u5217</p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0 <code>text</code> \u5c0f\u90e8\u4ef6</p></li><li><p>\u4fee\u590d\u6761\u4ef6\u8868\u8fbe\u5f0f\u65e0\u6cd5\u52a0\u8f7d\u6570\u636e\u6e90\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/460" data-url="https://github.com/cipchk/ng-alain/issues/460">#460</a></p></li><li><p>\u7b2c\u4e09\u65b9\u5c0f\u90e8\u4ef6 <code>ueditor</code> \u589e\u52a0 <code>delay</code> \u5c5e\u6027</p></li></ul></li><li><p>@delona/util</p><ul><li><p>\u65b0\u589e <code>updateHostClass</code> \u51fd\u6570\uff0c\u7528\u4e8e\u66f4\u65b0\u5bbf\u4e3b\u7ec4\u4ef6\u6837\u5f0f <code>class</code></p></li></ul></li><li><p>\u6587\u6863\u7ad9\u90e8\u5206\u7ae0\u8282\u6821\u9a8c\uff0c<a target="_blank" href="https://github.com/Eve-1995" data-url="https://github.com/Eve-1995">@Eve-1995</a>\u3001<a target="_blank" href="https://github.com/apphost" data-url="https://github.com/apphost">@apphost</a></p></li></ul><h3 id="1.0.3">1.0.3<a onclick="window.location.hash = \'1.0.3\'" class="anchor">#</a></h3><p><code>2018-5-20</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d <code>default.interceptor.ts</code> \u90e8\u5206\u6ce8\u91ca\u672a\u5347\u7ea7 rxjs6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/62341a" data-url="https://github.com/cipchk/ng-alain/commit/62341a">62341a</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code></p><ul><li><p><strong>BREAKING CHANGES</strong> \u5217\u63cf\u8ff0\u6309\u94ae\u5224\u65ad\u5c5e\u6027 <code>if</code> \u53d8\u66f4\u4e3a <code>iif</code>\uff0c\u4fdd\u6301\u517c\u5bb9 <code>1.1.0</code> \u540e\u5c06\u79fb\u9664 <code>if</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/450" data-url="https://github.com/cipchk/ng-alain/issues/450">#450</a></p></li><li><p>\u4fee\u590d\u5f53\u8868\u683c\u4e3a\u7a7a\u65f6\u5f02\u5e38\u95ee\u9898</p></li></ul></li><li><p><code>g2-pie</code> \u4fee\u590d <code>0</code> \u767e\u5206\u6bd4\u663e\u793a\u9519\u8bef\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/446" data-url="https://github.com/cipchk/ng-alain/issues/446">#446</a></p></li><li><p><code>xlsx</code></p><ul><li><p>\u4fee\u590d Xlsx \u5bfc\u5165\u65f6\u65e0\u6cd5\u52a0\u8f7d Excel \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/449" data-url="https://github.com/cipchk/ng-alain/issues/449">#449</a>\uff0c<a target="_blank" href="https://github.com/NitronPlus" data-url="https://github.com/NitronPlus">@NitronPlus</a></p></li><li><p>\u5347\u7ea7\u9ed8\u8ba4CDN\u7248\u672c\u81f3 <code>0.12.12</code></p></li></ul></li></ul></li><li><p>@delon/form</p><ul><li><p><strong>BREAKING CHANGES</strong> <code>cascader</code> \u5c0f\u90e8\u4ef6 <code>loadData</code> \u7531 <code>asyncData</code> \u66ff\u4ee3\uff0c\u4fdd\u6301\u7edf\u4e00\u5f02\u6b65\u6570\u636e\u6e90\u7684\u540d\u79f0</p></li></ul></li><li><p>@delon/theme</p><ul><li><p><code>ModalHelper</code> \u7684 <code>maskClosable</code> \u53d8\u66f4\u4e3a <code>nzMaskClosable</code>\uff0c<a target="_blank" href="https://github.com/vellengs" data-url="https://github.com/vellengs">@vellengs</a></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u589e\u52a0 tslint \u7ec4\u4ef6\u548c\u6307\u4ee4\u6821\u9a8c\u89c4\u5219</p></li><li><p>\u4fee\u590d\u90e8\u5206\u8d44\u6e90\u8def\u5f84\u95ee\u9898</p></li></ul></li></ul><h3 id="1.0.2">1.0.2<a onclick="window.location.hash = \'1.0.2\'" class="anchor">#</a></h3><p><code>2018-5-16</code></p><ul><li><p>\u91cd\u6784\u6240\u6709 <code>@angular/cdk/coercion</code> \u4f18\u5148\u4f7f\u7528 <code>@delon/util</code></p></li><li><p>@delon/abc</p><ul><li><p><code>page-header</code> \u91cd\u6784\u6837\u5f0f\u98ce\u683c</p></li><li><p><code>reuse-tab</code></p><ul><li><p>\u91cd\u6784\u6837\u5f0f\u98ce\u683c</p></li><li><p>\u4fee\u590d <code>_onReuseInit</code> \u5728\u7ee7\u627f\u7c7b\u65e0\u6cd5\u89e6\u53d1\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/438" data-url="https://github.com/cipchk/ng-alain/issues/438">#438</a></p></li><li><p>\u4fee\u590d\u8bed\u8a00\u4e0e\u8def\u7531\u91cd\u7f6e\u89e6\u53d1\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/440" data-url="https://github.com/cipchk/ng-alain/issues/440">#440</a></p></li></ul></li><li><p><code>simple-table</code></p><ul><li><p>\u65b0\u589e\u652f\u6301\u591a\u4e2a\u76f8\u540c\u6392\u5e8f\u503c\u81ea\u52a8\u5408\u5e76\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/434" data-url="https://github.com/cipchk/ng-alain/issues/434">#434</a></p></li><li><p>\u65b0\u589e <code>frontPagination</code> \u524d\u7aef\u5206\u9875\u53d7\u63a7\u6a21\u5f0f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/443" data-url="https://github.com/cipchk/ng-alain/issues/443">#443</a></p></li></ul></li><li><p><code>timeline</code> \u589e\u52a0 <code>mask</code>\u3001<code>position</code> \u63a5\u53e3\uff0c<a target="_blank" href="https://github.com/canaanjin" data-url="https://github.com/canaanjin">@canaanjin</a></p></li></ul></li><li><p>@delon/util</p><ul><li><p>\u589e\u52a0 <code>toBoolean</code>\u3001<code>toNumber</code> \u65b9\u6cd5</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u589e\u52a0 <code>ng-alain.css</code>\u3001<code>ng-alain.min.css</code></p></li></ul></li><li><p>Schematics</p><ul><li><p>\u4fee\u590d <code>ng add ng-alain --i18n</code> \u65e0\u6cd5\u8fd0\u884c\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/442" data-url="https://github.com/cipchk/ng-alain/issues/442">#442</a></p></li></ul></li></ul><h3 id="1.0.1">1.0.1<a onclick="window.location.hash = \'1.0.1\'" class="anchor">#</a></h3><p><code>2018-5-16</code></p><ul><li><p>\u540c\u6b65 <code>0.7.0</code></p></li><li><p>\u652f\u6301 <code>ng add ng-alain</code> \u6784\u5efa\u811a\u624b\u67b6\uff0c<a href="/cli" data-url="/cli">CLI</a></p></li></ul><p><strong>\u636e <code>1.0.1-beta.2@next</code> \u7684\u66f4\u65b0\u7ec6\u8282\uff1a</strong></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u964d\u7ea7 less \u7248\u672c\uff0c\u6682\u65f6\u53d7\u9650\u4e8e <a target="_blank" href="https://github.com/angular/angular-cli/issues/10430" data-url="https://github.com/angular/angular-cli/issues/10430">#10430</a> \u65e0\u6cd5\u5728 angular6 \u4f7f\u7528 zorro \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/46abde" data-url="https://github.com/cipchk/ng-alain/commit/46abde">46abde</a></p></li><li><p><strong>BREAKING CHANGES</strong> \u4f7f\u7528 <code>zh</code> \u66ff\u4ee3 <code>zh-Hans</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/541468" data-url="https://github.com/cipchk/ng-alain/commit/541468">541468</a></p></li><li><p>\u540c\u6b65 <code>0.7.0</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/3832a4" data-url="https://github.com/cipchk/ng-alain/commit/3832a4">3832a4</a></p></li></ul></li><li><p>\u547d\u4ee4\u884c</p><ul><li><p>\u79fb\u9664 <code>@delon/cli</code></p></li><li><p>\u652f\u6301 <code>ng add ng-alain</code></p></li></ul></li></ul><h3 id="1.0.1-beta.2@next">1.0.1-beta.2@next<a onclick="window.location.hash = \'1.0.1-beta.2@next\'" class="anchor">#</a></h3><p><code>2018-5-14</code></p><ul><li><p>\u652f\u6301 Angular6\uff0c\u89c1<a href="/docs/changelog-v6" data-url="/docs/changelog-v6">\u5347\u7ea7\u6307\u5f15</a></p></li></ul><blockquote><p>invalid <code>1.0.1-beta.1@next</code></p></blockquote><h3 id="1.0.0-beta.10@next">1.0.0-beta.10@next<a onclick="window.location.hash = \'1.0.0-beta.10@next\'" class="anchor">#</a></h3><p><code>2018-5-11</code></p><ul><li><p>\u91cd\u6784\u6240\u6709 <code>@delon/*</code> \u7684\u5f3a\u5236\u4f9d\u8d56\u5173\u7cfb</p></li><li><p>\u811a\u624b\u67b6</p><ul><li><p><strong>BREAKING CHANGES</strong> \u91cd\u6784\u8def\u7531\u590d\u7528\u7ec4\u4ef6\u7528\u6cd5\uff0c\u9700\u8981\u624b\u52a8\u6ce8\u518c <code>RouteReuseStrategy</code>\uff0c\u672a\u4f7f\u7528\u8be5\u7ec4\u4ef6\u4e0d\u53d7\u5f71\u54cd\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/6713c4" data-url="https://github.com/cipchk/ng-alain/commit/6713c4">6713c4</a></p></li><li><p><strong>BREAKING CHANGES</strong> \u4ece <code>@delon/abc</code> \u62bd\u79bb <code>AdUtilModule</code> \u6a21\u5757\u4e3a <code>@delon/util</code> \u65b0\u7c7b\u5e93\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/66b0ea" data-url="https://github.com/cipchk/ng-alain/commit/66b0ea">66b0ea</a></p></li><li><p>\u6dfb\u52a0\u4e8c\u7ef4\u7801\u793a\u4f8b\u9875\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/70fbfd" data-url="https://github.com/cipchk/ng-alain/commit/70fbfd">70fbfd</a></p></li></ul></li><li><p>@delon/util\uff1a\u65b0\u5de5\u5177\u96c6\u7c7b\u5e93</p></li><li><p>@delon/form</p><ul><li><p>\u589e\u52a0 <code>tag</code>\u3001<code>checkbox</code> \u53d8\u66f4\u56de\u8c03\u4e8b\u4ef6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/426" data-url="https://github.com/cipchk/ng-alain/issues/426">#426</a></p></li><li><p>\u4fee\u590d\u65e0\u6548\u5bfc\u5165\u8def\u5f84\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/65" data-url="https://github.com/cipchk/delon/issues/65">#65</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>reuse-tab</code>\uff1a<strong>BREAKING CHANGES</strong> \u91cd\u6784\u8def\u7531\u590d\u7528\u7ec4\u4ef6\u7528\u6cd5\uff0c\u9700\u8981\u624b\u52a8\u6ce8\u518c <code>RouteReuseStrategy</code></p></li><li><p><code>qr</code>\uff1a\u589e\u52a0\u751f\u6210\u4e8c\u7ef4\u7801\u7ec4\u4ef6</p></li><li><p><code>simple-table</code>\uff1a\u6587\u6863\u7ec6\u8282\uff0c<a target="_blank" href="https://github.com/NitronPlus" data-url="https://github.com/NitronPlus">@NitronPlus</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u82e5\u5e72bug</p></li></ul></li><li><p>\u5347\u7ea7\u6587\u6863\u7ad9</p></li></ul><h3 id="1.0.0-beta.9@next">1.0.0-beta.9@next<a onclick="window.location.hash = \'1.0.0-beta.9@next\'" class="anchor">#</a></h3><p><code>2018-5-7</code></p><ul><li><p>\u91cd\u6784</p><ul><li><p>\u4ee3\u7801\u98ce\u683c\uff1a\u7edf\u4e00\u6240\u6709\u4ee3\u7801\u98ce\u683c\uff08ng-alain\u3001@delon/*\uff09\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/410" data-url="https://github.com/cipchk/ng-alain/issues/410">#410</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/404" data-url="https://github.com/cipchk/ng-alain/issues/404">#404</a></p></li><li><p>\u4f7f\u7528 <code>deep-extend</code> \u89e3\u51b3 Deep Copy \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/412" data-url="https://github.com/cipchk/ng-alain/issues/412">#412</a></p></li></ul></li><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0 prettier \u4fee\u590d\u7edf\u4e00\u4ee3\u7801\u98ce\u683c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/05c540" data-url="https://github.com/cipchk/ng-alain/commit/05c540">05c540</a> <a target="_blank" href="https://github.com/billyma128" data-url="https://github.com/billyma128">@billyma128</a></p></li><li><p>\u589e\u52a0 nginx \u914d\u7f6e\u6587\u4ef6 <code>try_files</code> \u8282\u70b9\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/ae1e50" data-url="https://github.com/cipchk/ng-alain/commit/ae1e50">ae1e50</a></p></li><li><p>\u4fee\u590d\u8fdb\u5165\u5f02\u5e38\u9875\u5e94\u5173\u95ed\u5df2\u6253\u5f00 <code>modal</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/b994f3" data-url="https://github.com/cipchk/ng-alain/commit/b994f3">b994f3</a></p></li><li><p>\u4f7f\u7528 <code>npm run</code> \u66ff\u4ee3 <code>run-s</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/77bc16" data-url="https://github.com/cipchk/ng-alain/commit/77bc16">77bc16</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>simple-table</p><ul><li><p>\u589e\u52a0 <code>reload</code> \u65b9\u6cd5\uff0c\u8868\u793a\u5237\u65b0\u5f53\u524d\u9875</p></li><li><p>\u53d8\u66f4 <code>SimpleTableButton</code> \u6309\u94ae\u53ef\u9009\u9879</p><ul><li><p><strong>BREAKING CHANGES</strong> \u539f <code>reload</code> \u8868\u793a\u5237\u65b0\u5f53\u524d\u9875</p></li><li><p>\u589e\u52a0 <code>load</code> \u8868\u793a\u5237\u65b0\u8868\u683c\u4e14\u5f3a\u5236\u4e3a\u7b2c1\u9875</p></li></ul></li><li><p>\u4fee\u590d\u91cd\u65b0\u52a0\u8f7d\u6570\u636e\u65f6\u65e0\u6548\u9875\u7801\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/63" data-url="https://github.com/cipchk/delon/issues/63">#63</a>\u3001<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/379" data-url="https://github.com/cipchk/ng-alain/issues/379">#379</a></p></li></ul></li></ul></li><li><p>@delon/form</p><ul><li><p><strong>BREAKING CHANGES</strong> \u53d8\u66f4 <code>SFComponent</code> \u7684 <code>item</code> \u5c5e\u6027\u540d\u4e3a <code>value</code></p></li><li><p><strong>BREAKING CHANGES</strong> \u79fb\u9664 <code>ui.style</code> \u5c5e\u6027</p></li><li><p>\u589e\u52a0 <code>button</code> \u53ef\u9009\u503c <code>\'none\'</code> \u503c\u8868\u793a\u4e0d\u751f\u6210\u6309\u94ae\u548c\u5bb9\u5668</p></li><li><p>\u589e\u52a0 <code>mode</code> \u5c5e\u6027\u7528\u4e8e\u5feb\u901f\u8bbe\u7f6e\u53c2\u6570</p></li><li><p>time\uff1a\u4fee\u590d\u8fd8\u539f\u6570\u636e\u65f6\u90e8\u5206\u683c\u5f0f\u65f6\u95f4\u65e0\u6548\u95ee\u9898</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u589e\u52a0 <code>ng g page</code> \u7c7b\u578b <code>view</code>\u3001<code>edit</code></p></li><li><p>\u4fee\u590d <code>ng g page -t=list</code> \u4f7f\u7528\u4e86\u8fc7\u671f\u52a8\u6001\u8868\u5355\u7ec4\u4ef6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/411" data-url="https://github.com/cipchk/ng-alain/issues/411">#411</a></p></li></ul></li><li><p>@delon/acl</p><ul><li><p>\u589e\u52a0 <code>mode</code> \u5c5e\u6027\u8868\u793a\u6743\u9650\u6821\u9a8c\u6a21\u5f0f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/405" data-url="https://github.com/cipchk/ng-alain/issues/405">#405</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u540c\u6b65 <code>antd</code> \u76ee\u5f55\u90e8\u5206\u4f9d\u8d56 ng-zorro-antd 0.7 \u6837\u5f0f\u95ee\u9898\uff0c\u4f8b\u5982\uff1a<code>modal-*</code></p></li></ul></li></ul><h3 id="1.0.0-beta.8@next">1.0.0-beta.8@next<a onclick="window.location.hash = \'1.0.0-beta.8@next\'" class="anchor">#</a></h3><p><code>2018-5-3</code></p><ul><li><p>\u540c\u6b65ng-zorro-antd 0.7.0-beta.5\uff0c\u4e3b\u8981\u589e\u52a0 <code>nz-time-picker</code> \u7ec4\u4ef6</p></li><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4f7f\u7528husky\u63d0\u4ea4\u65f6\u98ce\u683c\u68c0\u67e5\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/329238" data-url="https://github.com/cipchk/ng-alain/commit/329238">329238</a> <a target="_blank" href="https://github.com/billyma128" data-url="https://github.com/billyma128">@billyma128</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u540c\u6b65\u65f6\u95f4\u7ec4\u4ef6\u4e3a <code>nz-time-picker</code></p></li><li><p>\u4fee\u590d\u7c7b\u578b <code>array</code> \u5bfc\u81f4UI <code>items</code> \u65e0\u6548\u95ee\u9898</p></li></ul></li></ul><h3 id="1.0.0-beta.7@next">1.0.0-beta.7@next<a onclick="window.location.hash = \'1.0.0-beta.7@next\'" class="anchor">#</a></h3><p><code>2018-4-26</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0 <code>@delon/form</code> \u793a\u4f8b\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/92d5d3" data-url="https://github.com/cipchk/ng-alain/commit/92d5d3">92d5d3</a></p></li></ul></li><li><p>@delon/form</p><ul><li><p>\u57fa\u4e8eJSON Schema\u52a8\u6001\u8868\u5355</p></li></ul></li></ul><h3 id="1.0.0-beta.6@next">1.0.0-beta.6@next<a onclick="window.location.hash = \'1.0.0-beta.6@next\'" class="anchor">#</a></h3><p><code>2018-4-22</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p><strong>BREAKING CHANGES</strong> \u81ea\u5305\u542b <code>ng-zorro-antd</code> \u7ec4\u4ef6\u6837\u5f0f\uff0c\u65e0\u9700\u518d\u5355\u7eaf\u6b64\u7528\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/44cad2" data-url="https://github.com/cipchk/ng-alain/commit/44cad2">44cad2</a></p></li><li><p>\u540c\u6b65 <code>ng-zorro-antd 0.7.0-beta.4</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/52bce7" data-url="https://github.com/cipchk/ng-alain/commit/52bce7">52bce7</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>sidebar-nav</code> \u6307\u5b9a <code>base-href</code> \u540e\u6536\u7f29\u65f6\u94fe\u63a5\u65e0\u6548\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/pull/59" data-url="https://github.com/cipchk/delon/pull/59">#59</a> <a target="_blank" href="https://github.com/pbbisme" data-url="https://github.com/pbbisme">@pbbisme</a></p></li><li><p>\u4fee\u590d <code>simple-table</code> \u5728 <code>-bo</code> \u6253\u5305\u65f6\u65e0\u6548 <code>reqReName</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/396" data-url="https://github.com/cipchk/ng-alain/issues/396">#396</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u81ea\u5305\u542b <code>ng-zorro-antd</code> \u7ec4\u4ef6\u6837\u5f0f</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fdd\u6301\u5728 <code>package.json</code> \u540c\u6b65 <code>ng-zorro-antd</code> \u7248\u672c</p></li></ul></li></ul><h3 id="1.0.0-beta.5@next">1.0.0-beta.5@next<a onclick="window.location.hash = \'1.0.0-beta.5@next\'" class="anchor">#</a></h3><p><code>2018-4-16</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u9876\u90e8\u4e8c\u7ea7\u83dc\u5355\u66f4\u53cb\u597d\u89e6\u53d1\u884c\u4e3a\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/765644d" data-url="https://github.com/cipchk/ng-alain/commit/765644d">765644d</a> (<a target="_blank" href="https://github.com/ferried" data-url="https://github.com/ferried">@ferried</a>)</p></li><li><p>\u4fee\u590d\u767b\u5f55\u9875</p><ul><li><p>\u683c\u5f0f\u95ee\u9898\uff1a\u9876\u90e8\u56fe\u6587\u5782\u76f4\u5c45\u4e2d\u3001\u79fb\u9664\u94fe\u63a5\u3001\u6807\u9898\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/b96cae" data-url="https://github.com/cipchk/ng-alain/commit/b96cae">b96cae</a></p></li><li><p>\u589e\u52a0\u767b\u5f55\u540e\u91cd\u65b0\u52a0\u8f7d <code>startup.service</code> \u793a\u4f8b\u4ee3\u7801\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/16c964" data-url="https://github.com/cipchk/ng-alain/commit/16c964">16c964</a></p></li></ul></li><li><p>\u91cd\u6784\u90e8\u5206\u9ed8\u8ba4\u62e6\u622a\u5668\u4e1a\u52a1\u5904\u7406\u65b9\u5f0f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/18e02f" data-url="https://github.com/cipchk/ng-alain/commit/18e02f">18e02f</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u589e\u52a0\u82e5\u5e72\u5168\u5c40\u53ef\u914d\u7f6e\u9879</p></li><li><p>\u589e\u52a0 <code>page-header</code> \u66f4\u591a\u989d\u5916\u53c2\u6570</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u4fa7\u8fb9\u680f\u7528\u6237\u4fe1\u606f\u4e0d\u5bf9\u9f50\u95ee\u9898</p></li></ul></li><li><p>\u6587\u6863\u7ad9\u652f\u6301PWA\u3001\u624b\u673a\u7248</p></li></ul><h3 id="0.8.2">0.8.2<a onclick="window.location.hash = \'0.8.2\'" class="anchor">#</a></h3><p><code>2018-4-8</code></p><ul><li><p>@delon/abc</p><ul><li><p>\u91cd\u6784 <code>reuse-tab</code> \u90e8\u5206\u903b\u8f91</p></li><li><p>\u4fee\u590d <code>Timeline</code> \u65e5\u671f\u683c\u5f0f\u95ee\u9898</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u65e0\u6cd5\u4f7f\u7528 <code>url</code> \u9644\u52a0 <code>token</code> \u95ee\u9898</p></li><li><p>\u4fee\u590d <code>login_url</code> \u652f\u6301\u5916\u90e8\u94fe\u63a5</p></li></ul></li></ul><h3 id="1.0.0-beta.4@next">1.0.0-beta.4@next<a onclick="window.location.hash = \'1.0.0-beta.4@next\'" class="anchor">#</a></h3><p><code>2018-4-8</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u5178\u578b\u641c\u7d22\u9875\u66f4\u597d\u53cb\u7684\u547d\u4e2dTab\u6807\u7b7e\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/e933f9a513a4a8e9735878a14da183872cab0c0d" data-url="https://github.com/cipchk/ng-alain/commit/e933f9a513a4a8e9735878a14da183872cab0c0d">49307e4</a> (<a target="_blank" href="https://github.com/Harlancui" data-url="https://github.com/Harlancui">@Harlancui</a>)</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u589e\u52a0 <code>sidebar-nav</code> \u4e8b\u4ef6 <code>select</code>\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/54" data-url="https://github.com/cipchk/delon/issues/54">#54</a></p></li><li><p>\u91cd\u6784 <code>reuse-tab</code> \u90e8\u5206\u903b\u8f91</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u65e0\u6cd5\u4f7f\u7528 <code>url</code> \u9644\u52a0 <code>token</code> \u95ee\u9898</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d\u8d85\u957f\u9875\u9762\u53ef\u80fd\u88ab\u622a\u65ad\u95ee\u9898</p></li></ul></li><li><p>\u91cd\u6784\u6587\u6863\u7ad9</p></li></ul><h3 id="1.0.0-beta.3@next">1.0.0-beta.3@next<a onclick="window.location.hash = \'1.0.0-beta.3@next\'" class="anchor">#</a></h3><p><code>2018-4-3</code></p><ul><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>getTimeDistance</code> \u5468\u8303\u56f4\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/50" data-url="https://github.com/cipchk/delon/issues/50">#50</a></p></li><li><p>\u4fee\u590d <code>sidebar-nav</code> \u4e0d\u517c\u5bb9 ie11 \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/52" data-url="https://github.com/cipchk/delon/issues/52">#52</a></p></li><li><p>\u91cd\u6784 <code>lodop</code> \u7684 <code>eval</code> \u95ee\u9898</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u652f\u6301 <code>login_url</code> \u652f\u6301\u5916\u90e8\u94fe\u63a5</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u90e8\u5206\u56fe\u7247\u3001Icon \u65e0\u6548\u94fe\u63a5\u95ee\u9898</p></li></ul></li><li><p>\u66f4\u65b0\u6587\u6863\u7ad9\u90e8\u5206\u9519\u522b\u5b57\uff0c<a target="_blank" href="https://github.com/bigpear0201" data-url="https://github.com/bigpear0201">@bigpear0201</a></p></li></ul><h3 id="1.0.0-beta.2@next">1.0.0-beta.2@next<a onclick="window.location.hash = \'1.0.0-beta.2@next\'" class="anchor">#</a></h3><p><code>2018-3-29</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u6309\u952e\u5207\u6362\u5168\u5c4f\u65f6\u65e0\u6cd5\u540c\u6b65\u6309\u94ae\u72b6\u6001\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/1d1f261" data-url="https://github.com/cipchk/ng-alain/commit/1d1f261">1d1f261</a>) <a target="_blank" href="https://github.com/cipchk/ng-alain/issues/360" data-url="https://github.com/cipchk/ng-alain/issues/360">#360</a> <a target="_blank" href="https://github.com/jecyhw" data-url="https://github.com/jecyhw">@jecyhw</a></p></li><li><p>\u4fee\u590d <code>passport.component.html</code> \u5e03\u5c40\u6a21\u677f <code>global-footer</code> \u4e0d\u663e\u793a\u95ee\u9898\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/b4cac34" data-url="https://github.com/cipchk/ng-alain/commit/b4cac34">b4cac34</a>)</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>reuse-tab</code> \u4f1a\u5173\u95ed\u6700\u540e\u4e00\u4e2a\u6807\u7b7e\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/363" data-url="https://github.com/cipchk/ng-alain/issues/363">#363</a></p></li></ul></li><li><p>@delon/cache</p><ul><li><p>\u65b0\u589e\u652f\u6301\u76d1\u542c <code>key</code> \u7528\u4e8e\u5904\u7406\u7c7b\u4f3c\u901a\u7528\u4e8b\u4ef6\u5904\u7406\u670d\u52a1\uff08<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/242" data-url="https://github.com/cipchk/ng-alain/issues/242">#242</a>\uff09</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u56fd\u9645\u5316\u65e0\u6cd5\u6b63\u5e38\u663e\u793a\u9876\u90e8\u641c\u7d22\u6846\u95ee\u9898</p></li></ul></li></ul><h3 id="1.0.0-beta.1@next">1.0.0-beta.1@next<a onclick="window.location.hash = \'1.0.0-beta.1@next\'" class="anchor">#</a></h3><p><code>2018-3-26</code></p><p><a href="docs/changelog-81" data-url="docs/changelog-81">1.0.0\u5347\u7ea7\u6307\u5f15</a></p><h3 id="0.8.1">0.8.1<a onclick="window.location.hash = \'0.8.1\'" class="anchor">#</a></h3><p><code>2018-3-16</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0 Lodop \u6253\u5370<a target="_blank" href="https://cipchk.github.io/ng-alain/other/print" data-url="https://cipchk.github.io/ng-alain/other/print">\u793a\u4f8b\u9875</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u589e\u52a0 <a href="/components/lodop" data-url="/components/lodop">Lodop</a> \u7ec4\u4ef6\uff0c\u6700\u5f3a\u6253\u5370\u63d2\u4ef6</p></li><li><p>\u4fee\u590d <code>LazyService</code> \u5ef6\u8fdf\u52a0\u8f7d\u8d44\u6e90\u7684JS\u811a\u672c\u7684\u5224\u65ad\u89c4\u5219</p></li><li><p>\u4fee\u590d <code>Pip</code> \u997c\u56fe tooltip \u767e\u5206\u6bd4\u663e\u793a\u9519\u8bef\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/331" data-url="https://github.com/cipchk/ng-alain/issues/331">#331</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d @delon \u4f7f\u7528\u65b0\u7248\u672c</p></li></ul></li><li><p>site</p><ul><li><p>\u4fee\u590d\u94fe\u63a5\u9519\u8bef\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/333" data-url="https://github.com/cipchk/ng-alain/issues/333">#333</a></p></li></ul></li></ul><h3 id="0.8.0">0.8.0<a onclick="window.location.hash = \'0.8.0\'" class="anchor">#</a></h3><p><code>2018-3-13</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p><strong>BREAKING CHANGES</strong> \u53d8\u66f4 <code>notice-icon</code> \u7ec4\u4ef6\u7684 <code>popupVisibleChange</code> \u4e8b\u4ef6\u540d\u4e3a <code>popoverVisibleChange</code>\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/2ec3c40" data-url="https://github.com/cipchk/ng-alain/commit/2ec3c40">2ec3c40</a>)</p></li><li><p>\u4fee\u590d <code>nz-schema-form</code> \u7b2c\u4e09\u65b9\u5c0f\u90e8\u4ef6\u5bfc\u5165\u5931\u8d25\u95ee\u9898\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/d676598" data-url="https://github.com/cipchk/ng-alain/commit/d676598">d676598</a>)</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d <code>_HttpClient</code> \u65e0\u6cd5\u6355\u83b7\u5f02\u5e38\u95ee\u9898</p></li><li><p>\u91cd\u6784 <code>MenuService</code>\u3001<code>ScrollService</code> \u90e8\u5206\u5197\u4f59\u903b\u8f91</p></li></ul></li><li><p>@delon/mock</p><ul><li><p>\u66f4\u53cb\u597d\u65e5\u5fd7\uff0c\u53ea\u5bf9\u547d\u4e2d\u7684\u89c4\u5219\u8fdb\u884c\u63d0\u9192</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u65e0\u6cd5\u6355\u83b7\u5f02\u5e38\u95ee\u9898</p></li></ul></li><li><p>delon/abc</p><ul><li><p>\u91cd\u6784 <code>reuse-tab</code>\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/23" data-url="https://github.com/cipchk/delon/issues/23">#23</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/252" data-url="https://github.com/cipchk/ng-alain/issues/252">#252</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/260" data-url="https://github.com/cipchk/ng-alain/issues/260">#260</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/272" data-url="https://github.com/cipchk/ng-alain/issues/272">#272</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/284" data-url="https://github.com/cipchk/ng-alain/issues/284">#284</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/296" data-url="https://github.com/cipchk/ng-alain/issues/296">#296</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/306" data-url="https://github.com/cipchk/ng-alain/issues/306">#306</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/320" data-url="https://github.com/cipchk/ng-alain/issues/320">#320</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/326" data-url="https://github.com/cipchk/ng-alain/issues/326">#326</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/328" data-url="https://github.com/cipchk/ng-alain/issues/328">#328</a></p></li><li><p>\u4fee\u590d <code>down-file</code> \u6ca1\u5bf9\u72b6\u6001\u7801\u7684\u6821\u9a8c\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/44" data-url="https://github.com/cipchk/delon/issues/44">#44</a></p></li></ul></li><li><p>ALL</p><ul><li><p>\u5bf9\u6240\u6709\u7ec4\u4ef6\u8bbe\u7f6e <code>preserveWhitespaces: false</code></p></li></ul></li></ul><h3 id="0.7.1">0.7.1<a onclick="window.location.hash = \'0.7.1\'" class="anchor">#</a></h3><p><code>2018-3-6</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u65b0\u589e <code>number-to-chinese</code> \u6a21\u5757\u5bfc\u5165\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/a170141" data-url="https://github.com/cipchk/ng-alain/commit/a170141">a170141</a>)</p></li><li><p>\u79fb\u9664<strong>\u8001\u7248\u672c\u517c\u5bb9\u6027</strong>\u5c5e\u6027 <code>translate</code>\uff0c\u5df2\u7edf\u4e00\u91c7\u7528 <code>i18n</code>\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/475ed58" data-url="https://github.com/cipchk/ng-alain/commit/475ed58">475ed58</a>)</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d\u6536\u7f29\u65f6\u5448\u73b0\u5b50\u83dc\u5355\u4f1a\u5f71\u54cd\u5185\u5bb9\u533a\u57df\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/305" data-url="https://github.com/cipchk/ng-alain/issues/305">#305</a></p></li><li><p><code>TitleService</code> \u65b0\u589e <code>titleI18n</code> \u5c5e\u6027\u652f\u6301\u56fd\u9645\u5316\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/315" data-url="https://github.com/cipchk/ng-alain/issues/315">#315</a></p></li><li><p><code>MenuService</code> \u4fee\u590d\u5feb\u6377\u83dc\u5355\u65e0\u6cd5\u56fd\u9645\u5316\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/316" data-url="https://github.com/cipchk/ng-alain/issues/316">#316</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>number-to-chinese</code> \u65b0\u589e\u4eba\u6c11\u5e01\u8f6c\u5927\u5199\u6a21\u5757</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u65b0\u589e <code>SessionStorageStore</code>\u3001<code>MemoryStore</code> \u4e24\u79cd\u5b58\u50a8\u6a21\u5f0f\uff0c\u89c1<a href="/docs/auth" data-url="/docs/auth">API\u6587\u6863</a></p></li></ul></li><li><p>@delon/cache</p><ul><li><p>\u4fee\u590d <code>get</code> \u65b9\u6cd5\u5df2\u5b58\u5728key\u65f6\u5e94\u8be5\u8fd4\u56de Observable \u7c7b\u578b\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/40" data-url="https://github.com/cipchk/delon/issues/40">#40</a></p></li></ul></li><li><p>@delon/mock</p><ul><li><p>\u65b0\u589eURL\u5141\u8bb8\u5305\u62ec\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/41" data-url="https://github.com/cipchk/delon/issues/41">#41</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u90e8\u5206\u5185\u90e8\u65e0\u540c\u6b65\u811a\u624b\u67b6\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/311" data-url="https://github.com/cipchk/ng-alain/issues/311">#311</a></p></li></ul></li></ul><h3 id="0.7.0">0.7.0<a onclick="window.location.hash = \'0.7.0\'" class="anchor">#</a></h3><p><code>2018-3-5</code></p><ul><li><p>\u66f4\u65b0\u6240\u6709\u6587\u6863\u7ad9\u70b9\u5185\u5bb9\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/307" data-url="https://github.com/cipchk/ng-alain/issues/307">#307</a></p></li><li><p>ALL\uff1a\u4fee\u590d\u5b57\u7b26\u4e32\u4e0e\u6a21\u677f\u65e0\u6cd5\u81ea\u7531\u5207\u6362\u95ee\u9898</p></li><li><p>@delon/theme</p><ul><li><p>ModalHelper\uff1a\u65b0\u589e <code>removeAll</code> \u65b9\u6cd5\u7528\u4e8e\u79fb\u9664\u5f53\u524d\u6240\u6709\u5bf9\u8bdd\u6846\uff0c\u81ea\u52a8\u7ba1\u7406 <code>z-index</code> \u53c2\u6570</p></li><li><p>Menu\uff1a\u65b0\u589e <code>hideInBreadcrumb</code> \u53c2\u6570\uff0c\u7528\u4e8e <code>pro-header</code> \u65f6\u81ea\u52a8\u9690\u85cf\u67d0\u8282\u70b9\u9879</p></li><li><p>\u4fee\u590dIE11\u4e0b\u65e0\u6cd5\u5207\u6362\u4e3b\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/302" data-url="https://github.com/cipchk/ng-alain/issues/302">#302</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>G2\uff1a\u5173\u95ed\u4f53\u9a8c\u6539\u8fdb\u8ba1\u5212\u8bf4\u660e</p></li><li><p>standard-form-row\uff1a\u65b0\u589e\u652f\u6301\u5b57\u7b26\u4e32\u98ce\u683c</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u62e6\u622a\u5668\u5f15\u8d77 \u201cYou provided an invalid object where a stream was expected. You can provide an Observable, Promise, Array, or Iterable.\u201d \u5f02\u5e38\u95ee\u9898</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u65b0\u589e <code>guard</code>\u3001<code>app-shell</code> \u547d\u4ee4</p></li><li><p>\u65b0\u589e <code>module</code> \u547d\u4ee4\u589e\u52a0\u65e0\u987b\u8def\u7531\u7ec4\u4ef6\u6ce8\u518c\u533a\u57df</p></li></ul></li></ul><h3 id="0.6.7">0.6.7<a onclick="window.location.hash = \'0.6.7\'" class="anchor">#</a></h3><p><code>2018-2-27</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u65b0\u589e <a target="_blank" href="https://github.com/cipchk/nz-schema-form" data-url="https://github.com/cipchk/nz-schema-form">nz-schema-form</a> \u5bfc\u5165\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/af77281" data-url="https://github.com/cipchk/ng-alain/commit/af77281">af77281</a>)</p></li><li><p>\u65b0\u589e package-lock.json \u6587\u4ef6\uff0c\u66f4\u5065\u58ee\u6784\u5efa\u73af\u5883\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/298" data-url="https://github.com/cipchk/ng-alain/issues/298">#298</a></p></li><li><p>\u4fee\u590d acl \u7c92\u5ea6\u63a7\u5236\u65f6\u53d8\u66f4\u6743\u9650\u65f6\u65e0\u6cd5\u751f\u6548\u95ee\u9898\uff0c\u4ee5\u53ca\u66f4\u53cb\u597d\u7684\u652f\u6301\u61d2\u6a21\u5757\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/291" data-url="https://github.com/cipchk/ng-alain/issues/291">#291</a>\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/a8c07fc" data-url="https://github.com/cipchk/ng-alain/commit/a8c07fc">a8c07fc</a>)</p></li><li><p>\u4fee\u590d toggleCollapsedSideabar \u65b9\u6cd5\u540d\u66f4\u6539\u4e3a toggleCollapsedSidebar\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/248" data-url="https://github.com/cipchk/ng-alain/pull/248">#248</a> <a target="_blank" href="https://github.com/dusdong" data-url="https://github.com/dusdong">@dusdong</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>pie</code> \u767e\u5206\u6bd4\u663e\u793a\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/288" data-url="https://github.com/cipchk/ng-alain/issues/288">#288</a></p></li><li><p>\u4fee\u590d <code>pro-header</code> \u5f53\u65e0\u4efb\u4f55\u9762\u5305\u5c51\u6570\u636e\u65f6\u4e0d\u663e\u793a\u8be5\u7ec4\u4ef6</p></li><li><p>\u65b0\u589e <code>yuan</code> \u652f\u6301\u5c0f\u6570\u70b9\uff0c<a target="_blank" href="https://github.com/cipchk/delon/pull/38" data-url="https://github.com/cipchk/delon/pull/38">#38</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u65b0\u589e <a target="_blank" href="https://github.com/cipchk/nz-schema-form" data-url="https://github.com/cipchk/nz-schema-form">nz-schema-form</a> \u5bfc\u5165</p></li><li><p>\u65b0\u589e page \u547d\u4ee4</p></li></ul></li></ul><h3 id="0.6.6">0.6.6<a onclick="window.location.hash = \'0.6.6\'" class="anchor">#</a></h3><p><code>2018-2-2</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u589e\u52a0\u9000\u51fa\u767b\u5f55\u65f6\u6e05\u7a7a\u8def\u7531\u590d\u7528\u6570\u636e\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/0322190" data-url="https://github.com/cipchk/ng-alain/commit/0322190">0322190</a>)</p></li><li><p>\u4fee\u590d\u9ed8\u8ba4\u8bed\u8a00\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/269" data-url="https://github.com/cipchk/ng-alain/issues/269">#269</a> (<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/39206be" data-url="https://github.com/cipchk/ng-alain/commit/39206be">39206be</a>)</p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u65b0\u589e <code>type: \'number\'</code> \u6570\u5b57\u683c\u5f0f\u5316\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/267" data-url="https://github.com/cipchk/ng-alain/issues/267">#267</a></p></li><li><p>\u65b0\u589e <code>multiSort</code> \u652f\u6301\u591a\u6392\u5e8f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/270" data-url="https://github.com/cipchk/ng-alain/issues/270">#270</a></p></li></ul></li><li><p><code>sidebar-nav</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u4fee\u590d\u5927\u5c4f\u5e55\u4e5f\u4f1a\u81ea\u52a8\u5173\u95ed\u4fa7\u8fb9\u680f\u95ee\u9898</p></li><li><p>\u4fee\u590d\u6536\u8d77\u65f6\u9f20\u6807\u60ac\u505c\u663e\u793a\u88ab\u9009\u4e2d\u9879\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/266" data-url="https://github.com/cipchk/ng-alain/issues/266">#266</a></p></li></ul></li><li><p>\u65b0\u589e <code>number-info</code> \u5141\u8bb8\u6570\u5b57\u578b <code>0</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/262" data-url="https://github.com/cipchk/ng-alain/issues/262">#262</a></p></li></ul></li></ul><h3 id="0.6.5">0.6.5<a onclick="window.location.hash = \'0.6.5\'" class="anchor">#</a></h3><p><code>2018-1-24</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u5207\u6362\u8bed\u8a00\u65f6\u65e0\u540c\u6b65\u66f4\u6539\u6807\u9898\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/28" data-url="https://github.com/cipchk/delon/issues/28">#28</a> (<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/80b0fce" data-url="https://github.com/cipchk/ng-alain/commit/80b0fce">80b0fce</a>)</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u65b0\u589e <code>simple-table</code> \u65b9\u6cd5 <code>reset()</code>\uff0c\u7528\u4e8e<a href="/components/simple-table#components-simple-table-form" data-url="/components/simple-table#components-simple-table-form">\u91cd\u7f6e</a>\u8868\u5355</p></li><li><p>\u65b0\u589e <code>sidebar-nav</code> \u5c0f\u4e8e <code>992</code> \u4ee5\u4e0b\u5207\u6362\u8def\u7531\u65f6\u81ea\u52a8\u5173\u95ed\u4fa7\u8fb9\u680f</p></li><li><p>\u65b0\u589e <code>pro-header</code> \u914d\u7f6e\u9879\uff0c\u4f8b\u5982\u81ea\u5b9a\u4e49 Home \u5185\u5bb9</p></li><li><p>\u4fee\u590d <code>reuse-tab</code> \u81ea\u5b9a\u4e49\u6807\u9898\u9519\u4f4d\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/25" data-url="https://github.com/cipchk/delon/issues/25">#25</a> <a target="_blank" href="https://github.com/cipchk/ng-alain/issues/247" data-url="https://github.com/cipchk/ng-alain/issues/247">#247</a></p></li><li><p>\u4f18\u5316\u66f4\u53ef\u9760\u7684\u6df1\u5ea6\u62f7\u8d1d</p></li></ul></li></ul><h3 id="0.6.4">0.6.4<a onclick="window.location.hash = \'0.6.4\'" class="anchor">#</a></h3><p><code>2018-1-22</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u91cd\u6784 <code>startup.service</code>\u3001<code>default.interceptor</code> \u903b\u8f91\u5904\u7406 (<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/3f437a1" data-url="https://github.com/cipchk/ng-alain/commit/3f437a1">3f437a1</a>)</p></li><li><p>\u91cd\u6784 <code>title.service</code> \u5c06\u8def\u7531 <code>data.title</code> \u4f18\u5148\u7ea7\u9ad8\u4e8e\u5176\u4ed6 (<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/7f2ceeb" data-url="https://github.com/cipchk/ng-alain/commit/7f2ceeb">7f2ceeb</a>)</p></li><li><p>\u4e0d\u518d\u7ef4\u62a4 <code>blank</code> \u5206\u652f</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u91cd\u6784 <code>TitleService</code> \u5305\u62ec\uff1a</p><ul><li><p><strong>BREAKING CHANGES</strong> \u79fb\u9664 <code>setTitleByUrl</code> \u7edf\u4e00\u91c7\u7528 <code>setTitle</code></p></li><li><p>\u65b0\u589e <code>default</code> \u5c5e\u6027\u6307\u5b9a\u9ed8\u8ba4\u6807\u9898\u540d</p></li></ul></li><li><p>\u91cd\u6784 <code>begin</code>\u3001<code>end</code> \u4e3a <code>public</code></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u65b0\u589e\u6309\u94ae\u5141\u8bb8\u8bbe\u7f6e <code>"reload"</code> \u8868\u793a\u91cd\u65b0\u52a0\u8f7d\u8868\u683c</p></li><li><p>\u65b0\u589e\u6309\u94ae\u5f53 <code>type=modal</code> \u65f6\u5141\u8bb8\u8bbe\u7f6e <code>paramName</code> \u7b80\u5316\u76ee\u6807\u7ec4\u4ef6\u7684\u63a5\u6536\u53c2\u6570\u540d</p></li><li><p>\u4fee\u590d\u5f53\u6307\u5b9a <code>ps=0</code> \u65f6\u5e94\u8be5\u4e0d\u5206\u9875\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/27" data-url="https://github.com/cipchk/delon/issues/27">#27</a></p></li></ul></li><li><p>\u4fee\u590d <code>reuse-tab</code> \u67d0\u4e9b\u60c5\u51b5\u4e0b\u5bfc\u81f4 <code>active</code> \u65e0\u6548\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/244" data-url="https://github.com/cipchk/ng-alain/issues/244">#244</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u53ef\u80fd\u4f1a\u56e0\u4e3a\u8df3\u8f6c\u5f15\u8d77\u6e32\u67d3\u5f02\u5e38</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u540c\u6b65\u811a\u624b\u67b6\u7684\u4f18\u5316</p></li></ul></li></ul><h3 id="0.6.3">0.6.3<a onclick="window.location.hash = \'0.6.3\'" class="anchor">#</a></h3><p><code>2018-1-20</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u4f18\u5316cli\uff0c\u5c06 i18n \u76f8\u5173\u6587\u4ef6\u7edf\u4e00\u547d\u540d\u4e3a <code>i18n.*</code> \u5f00\u5934 (<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/68ef9e9" data-url="https://github.com/cipchk/ng-alain/commit/68ef9e9">68ef9e9</a>)</p></li><li><p>\u4f18\u5316 @delon/abc \u6a21\u5757 <code>forRoot</code> \u6309\u9700\u6ce8\u518c\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/28e0b88" data-url="https://github.com/cipchk/ng-alain/commit/28e0b88">28e0b88</a>)</p></li><li><p>\u5347\u7ea7 @angular/cli \u81f3\u6700\u65b0\u7248\u672c\uff0c(<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/9bcb411" data-url="https://github.com/cipchk/ng-alain/commit/9bcb411">9bcb411</a>)</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4f18\u5316\u7c7b\u5e93\u4f9d\u8d56\u81ea\u52a8\u4e0b\u8f7d\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/22" data-url="https://github.com/cipchk/delon/issues/22">#22</a> <a target="_blank" href="https://github.com/cipchk/ng-alain/issues/237" data-url="https://github.com/cipchk/ng-alain/issues/237">#237</a></p></li><li><p>\u91cd\u6784 <code>reuse-tab</code> \u51b3\u5b9a\u662f\u5426\u590d\u7528\u903b\u8f91\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/24" data-url="https://github.com/cipchk/delon/issues/24">#24</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u65b0\u589e <code>--delon-electron</code> \u53c2\u6570\uff0c\u652f\u6301 Electron \u6253\u5305\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/221" data-url="https://github.com/cipchk/ng-alain/issues/221">#221</a></p></li></ul></li></ul><h3 id="0.6.2">0.6.2<a onclick="window.location.hash = \'0.6.2\'" class="anchor">#</a></h3><p><code>2018-1-18</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u65b0\u589e\u4e0a\u4f20\u793a\u4f8b\u9875\u91c7\u7528 <code>nz-upload</code></p></li><li><p>\u4fee\u590d\u6700\u65b0 @angular/cli \u65e0\u6cd5\u52a0\u8f7d less \u95ee\u9898\uff0c\u91c7\u7528\u56fa\u5b9a <code>1.6.2</code> \u7248\u672c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/205" data-url="https://github.com/cipchk/ng-alain/issues/205">#205</a></p></li><li><p>\u4f18\u5316 <code>DefaultInterceptor</code> \u6ce8\u5165 <code>NzMessageService</code> \u6d88\u606f\u6846\u793a\u4f8b\uff0c\u53ca\u4fee\u590d <code>catchError</code> \u7c7b\u578b\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/226" data-url="https://github.com/cipchk/ng-alain/issues/226">#226</a> <a target="_blank" href="https://github.com/vellengs" data-url="https://github.com/vellengs">@vellengs</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>reuse-tab</code> \u5f15\u53d1\u7236\u7ec4\u4ef6\u590d\u7528\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/20" data-url="https://github.com/cipchk/delon/issues/20">#20</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u4fee\u590d\u6700\u65b0 @angular/cli \u65e0\u6cd5\u52a0\u8f7d less \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/205" data-url="https://github.com/cipchk/ng-alain/issues/205">#205</a></p></li></ul></li></ul><h3 id="0.6.1">0.6.1<a onclick="window.location.hash = \'0.6.1\'" class="anchor">#</a></h3><p><code>2018-1-16</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u4fee\u590dIPAD\u5c4f\u5e55\u4ee5\u4e0b\u51fa\u73b0\u9519\u4f4d\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/215" data-url="https://github.com/cipchk/ng-alain/issues/215">#215</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>reuse-tab</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u4fee\u590d\u8def\u7531\u53c2\u6570\u91cd\u590d\u89e6\u53d1\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/13" data-url="https://github.com/cipchk/delon/issues/13">#13</a></p></li><li><p>\u65b0\u589e <code>_onReuseInit</code>\u3001<code>_onReuseDestroy</code> \u751f\u547d\u5468\u671f\u94a9\u5b50\uff0c\u7528\u4e8e\u590d\u7528\u8fc7\u7a0b\u4e2d\u65e0\u6cd5\u89e6\u53d1Angular\u7ec4\u4ef6\u4efb\u4f55\u751f\u547d\u5468\u671f\u94a9\u5b50\u95ee\u9898</p></li></ul></li><li><p>\u4f18\u5316 <code>xlsx</code> \u9ed8\u8ba4\u52a0\u8f7d\u5b8c\u6574\u7248\u672c\u7c7b\u5e93</p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u65b0\u589e class,directive,enum,interface,pipe,service \u6a21\u677f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/217" data-url="https://github.com/cipchk/ng-alain/issues/217">#217</a></p></li><li><p>\u4fee\u590d\u82e5\u5e72\u56fd\u9645\u5316\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/218" data-url="https://github.com/cipchk/ng-alain/issues/218">#218</a></p></li></ul></li></ul><h3 id="0.6.0">0.6.0<a onclick="window.location.hash = \'0.6.0\'" class="anchor">#</a></h3><p><code>2018-1-14</code></p><ul><li><p>ng-alain \u811a\u624b\u67b6</p><ul><li><p><strong>BREAKING CHANGES</strong> \u4f18\u5316\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/commit/7b6de512d2bd6cb99a1d576eedd4ad9ea0808352" data-url="https://github.com/cipchk/ng-alain/commit/7b6de512d2bd6cb99a1d576eedd4ad9ea0808352">#commit</a>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/180" data-url="https://github.com/cipchk/ng-alain/issues/180">#180</a></p></li><li><p>\u65b0\u589e <code>cache</code>\u3001<code>acl-guard</code> \u901a\u7528\u8def\u7531\u5b88\u536b\u793a\u4f8b\u9875</p></li><li><p>\u65b0\u589e\u4e3b\u83dc\u5355\u4e8c\u7ea7\u652f\u6301\u6536\u7f29\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/177" data-url="https://github.com/cipchk/ng-alain/issues/177">#177</a></p></li><li><p>\u65b0\u589e <code>@delon/abc</code> \u5168\u5c40\u914d\u7f6e\u793a\u4f8b\u4ee3\u7801</p></li><li><p>\u5347\u7ea7 <code>typescript: 2.6.0</code> \u7248\u672c\uff0c\u66f4\u4e25\u683c\u7684\u7c7b\u578b\u68c0\u67e5</p></li><li><p>\u4f18\u5316 <code>DefaultInterceptor</code> \u66f4\u53cb\u597d\u7684\u5904\u7406\u903b\u8f91</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u65b0\u589e <code>HttpClient</code> \u6cdb\u578b\u652f\u6301\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/16" data-url="https://github.com/cipchk/delon/issues/16">#16</a></p></li><li><p>\u4fee\u590d\u65e0\u6cd5\u79fb\u9664\u7a7a\u5feb\u6377\u83dc\u5355\u6570\u636e\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/196" data-url="https://github.com/cipchk/ng-alain/issues/196">#196</a></p></li><li><p>\u4f18\u5316 <code>MenuService</code> \u81ea\u52a8\u5904\u7406 <code>acl</code> \u5c5e\u6027\u503c</p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-table</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u65b0\u589e <code>pi</code> \u5141\u8bb8\u5168\u5c40\u8bbe\u7f6e\u4e14\u6700\u5c0f\u53ef\u4e3a <code>0</code>\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/194" data-url="https://github.com/cipchk/ng-alain/issues/194">#194</a></p></li><li><p>\u4fee\u590d\u65e0\u6cd5\u83b7\u53d6 <code>total</code> \u503c\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/200" data-url="https://github.com/cipchk/ng-alain/issues/200">#200</a></p></li></ul></li><li><p><code>reuse-tab</code> \u53d8\u66f4\uff1a</p><ul><li><p>\u65b0\u589e <code>mode</code>\u3001<code>debug</code> \u5c5e\u6027</p></li><li><p>\u4fee\u590d <code>ReuseTabService</code> \u8c03\u7528 <code>clear()</code>\u3001<code>remove()</code> \u65f6\u65e0\u6cd5\u540c\u6b65\u66f4\u65b0\u7ec4\u4ef6\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/191" data-url="https://github.com/cipchk/ng-alain/issues/191">#191</a></p></li></ul></li><li><p>\u4f18\u5316\u5305\u4f53\u5927\u5c0f</p></li></ul></li><li><p>@delon/acl</p><ul><li><p>\u65b0\u589e\u901a\u7528ACL\u8def\u7531\u5b88\u536b\u65b9\u6cd5\uff0c<a href="/docs/acl" data-url="/docs/acl">Document</a></p></li></ul></li><li><p>@delon/cache</p><ul><li><p>\u4fee\u590d\u65e0\u6cd5\u8bbe\u7f6e\u6709\u6548\u671f\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/190" data-url="https://github.com/cipchk/ng-alain/issues/190">#190</a></p></li><li><p>\u4fee\u590d <code>tryGet</code> \u65e0\u6cd5\u8fd4\u56de <code>Observalbe</code> \u7c7b\u578b\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/15" data-url="https://github.com/cipchk/delon/issues/15">#15</a></p></li><li><p>\u652f\u6301\u6cdb\u578b\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/14" data-url="https://github.com/cipchk/delon/issues/14">#14</a></p></li></ul></li><li><p>@delon/cli</p><ul><li><p>\u57fa\u4e8e Angular Cli \u5411\u4e0a\u6784\u5efa\u7684\u9488\u5bf9 ng-alain \u811a\u624b\u67b6\u7684\u547d\u4ee4\u884c\u5de5\u5177\uff0c<a href="/cli" data-url="/cli">Document</a></p></li></ul></li></ul><h3 id="0.5.0">0.5.0<a onclick="window.location.hash = \'0.5.0\'" class="anchor">#</a></h3><p><code>2018-1-5</code></p><ul><li><p>ng-alain \u811a\u624b\u67b6</p><ul><li><p>\u65b0\u589e <code>full-content</code>\u3001<code>zip</code>\u3001<code>xlsx</code> \u793a\u4f8b\u9875</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d\u5feb\u6377\u83dc\u5355\u9879 <code>externalLink</code> \u5c5e\u6027\u65e0\u6548\u503c\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/169" data-url="https://github.com/cipchk/ng-alain/issues/169">#169</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u65b0\u589e <code>full-content</code> \u5168\u5c4f\u5de5\u4f5c\u533a\u7ec4\u4ef6\uff0c<a href="/components/full-content" data-url="/components/full-content">Document</a></p></li><li><p>\u65b0\u589e <code>zip</code> \u7ec4\u4ef6\uff0c<a href="/components/zip" data-url="/components/zip">Document</a></p></li><li><p>\u65b0\u589e <code>xlsx</code> \u7ec4\u4ef6\uff0c<a href="/components/xlsx" data-url="/components/xlsx">Document</a></p></li><li><p><code>simple-table</code> \u53d8\u66f4\uff1a</p><ul><li><p><strong>BREAKING CHANGES</strong> \u5217\u63cf\u8ff0 <code>url</code> \u5c5e\u6027\u7531 <code>data</code> \u4ee3\u66ff\uff0c\u6570\u636e\u6e90\u7edf\u4e00\u4e00\u4e2a\u5c5e\u6027\u540d\uff0c<code>0.6.0</code> \u540e\u5c06\u79fb\u9664 <code>url</code> \u5c5e\u6027</p></li><li><p>\u65b0\u589e\u5217\u63cf\u8ff0 <code>i18n</code> \u5c5e\u6027\uff0c\u652f\u6301\u56fd\u9645\u5316</p></li><li><p>\u65b0\u589e <code>simple-table</code> \u7ec4\u4ef6\u5bfc\u51fa Excel \u65b9\u6cd5\uff0c<a target="_blank" href="//cipchk.github.io/ng-alain/tables/simple-table" data-url="//cipchk.github.io/ng-alain/tables/simple-table">Demo</a></p></li><li><p>\u65b0\u589e\u5217\u63cf\u8ff0\u3001\u6309\u94ae\u7ec4\u3001\u8fc7\u6ee4\u3001\u9009\u62e9\u9879\u7684 <code>acl</code> \u53c2\u6570\uff0c\u7528\u4e8e\u6743\u9650\u63a7\u5236\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/158" data-url="https://github.com/cipchk/ng-alain/issues/158">#158</a></p></li><li><p>\u65b0\u589e <code>export()</code> \u652f\u6301\u6307\u5b9a\u6570\u7ec4\u6570\u636e\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/162" data-url="https://github.com/cipchk/ng-alain/issues/162">#162</a></p></li></ul></li><li><p>\u4f18\u5316 <code>tag-cloud</code> \u4e91\u8bcd\u7ec4\u4ef6</p></li></ul></li><li><p>@delon/mock</p><ul><li><p>Angular \u91cc Mock Http\u6570\u636e\uff0c\u9002\u7528\u4e8e\u6240\u6709 Angular \u9879\u76ee\uff0c<a href="/docs/mock" data-url="/docs/mock">Document</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590dAngular\u6a21\u5757\u6682\u4e0d\u652f\u6301\u6b63\u5219\u53c2\u6570\uff08<a target="_blank" href="https://github.com/angular/angular/issues/14187" data-url="https://github.com/angular/angular/issues/14187">#14187</a>\uff09\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/170" data-url="https://github.com/cipchk/ng-alain/issues/170">#170</a></p></li></ul></li></ul><h3 id="0.4.4">0.4.4<a onclick="window.location.hash = \'0.4.4\'" class="anchor">#</a></h3><p><code>2017-12-30</code></p><ul><li><p>ng-alain \u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d <code>g2-plugin-slider</code> \u8def\u5f84\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/157" data-url="https://github.com/cipchk/ng-alain/issues/157">#157</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p><code>simple-talbe</code> \u65b0\u589e <code>body</code>\u3001<code>footer</code> \u5c5e\u6027</p></li></ul></li></ul><h3 id="0.4.3">0.4.3<a onclick="window.location.hash = \'0.4.3\'" class="anchor">#</a></h3><p><code>2017-12-28</code></p><ul><li><p>@delon/abc</p><ul><li><p><code>simple-talbe</code> \u53d8\u66f4</p><ul><li><p>\u65b0\u589e <code>disabled</code> \u5c5e\u6027\u8868\u793a\u5f53\u524d\u884c\u591a\u3001\u5355\u9009\u6846\u662f\u5426\u7981\u7528\u72b6\u6001\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/151" data-url="https://github.com/cipchk/ng-alain/issues/151">#151</a></p></li><li><p>\u4fee\u590d\u65e0\u6cd5\u663e\u793a\u90e8\u5206\u6570\u636e\u7c7b\u578b\u95ee\u9898</p></li></ul></li></ul></li><li><p>@delon/auth</p><ul><li><p><code>token_send_template</code> \u652f\u6301\u591a\u5c5e\u6027\uff08\u4f8b\u5982\uff1a<code>${uid}-${token}</code>\uff09\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/154" data-url="https://github.com/cipchk/ng-alain/issues/154">#154</a></p></li></ul></li></ul><h3 id="0.4.2">0.4.2<a onclick="window.location.hash = \'0.4.2\'" class="anchor">#</a></h3><blockquote><p><code>0.4.1</code> invalid</p></blockquote><p><code>2017-12-27</code></p><ul><li><p>\u65b0\u589e <code>@next</code> NPM\u7248\u672c\uff0c\u7528\u4e8e\u533a\u5206\u7a33\u5b9a\u7248\u672c\u4e0e\u5c55\u671b\u7248\u672c</p></li><li><p>ng-alain \u811a\u624b\u67b6</p><ul><li><p>\u4fee\u590d\u9876\u90e8\u9501\u5c4f\u65e0\u6548\u94fe\u63a5</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u65b0\u589e <code>MenuService</code> \u7684 <code>change</code> \u5c5e\u6027\uff0c\u53ef\u7528\u4e8e\u76d1\u542c\u83dc\u5355\u6570\u636e\u7684\u53d8\u66f4\u901a\u77e5</p></li><li><p>\u4fee\u590d <code>_HttpClient</code> \u5171\u4eab\u670d\u52a1 <code>loading</code> \u5bb9\u6613\u5f15\u8d77 <code>ExpressionChangedAfterItHasBeenCheckedError</code> \u95ee\u9898</p></li><li><p>\u4f18\u5316 <code>ThemeService.setTheme</code> \u8c03\u7528\u65f6\u540c\u6b65\u8c03\u7528 <code>SettingsService</code></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>reuse-tab</code> \u7ec4\u4ef6\u5728\u79fb\u9664\u65f6\u81ea\u52a8\u8c03\u7528\u76ee\u6807\u7ec4\u4ef6 <code>OnDestroy</code> \u4e8b\u4ef6\uff0c\u907f\u514d\u5185\u5b58\u6cc4\u9732</p></li><li><p>\u4f18\u5316 G2 \u90e8\u5206\u7ec4\u4ef6</p></li><li><p><code>simple-talbe</code> \u53d8\u66f4</p><ul><li><p>\u652f\u6301\u56fa\u5b9a\u8868\u5934</p></li><li><p><code>columens</code> \u652f\u6301 <code>ynTruth</code> \u5c5e\u6027</p></li><li><p>\u4fee\u590d\u9009\u62e9\u6846\u3001\u5355\u9009\u6846\u5bf9\u9f50\u95ee\u9898</p></li></ul></li><li><p>\u79fb\u9664 <code>ngx-countdown</code> \u5f3a\u5236\u4f9d\u8d56</p></li></ul></li></ul><h3 id="0.4.0">0.4.0<a onclick="window.location.hash = \'0.4.0\'" class="anchor">#</a></h3><p><code>2017-12-24</code></p><ul><li><p>ng-alain \u811a\u624b\u67b6</p><ul><li><p>\u65b0\u589e <a target="_blank" href="//github.com/cipchk/ng-alain/tree/blank" data-url="//github.com/cipchk/ng-alain/tree/blank">blank</a> \u57fa\u7840\u7248\u5206\u652f\uff0c\u5982\u4f55\u4f7f\u7528\u89c1<a href="/docs/getting-started" data-url="/docs/getting-started">\u6587\u6863</a></p></li><li><p>\u65b0\u589e <a target="_blank" href="https://cipchk.github.io/ng-alain/" data-url="https://cipchk.github.io/ng-alain/">reuse-tab</a>\u3001<a target="_blank" href="https://cipchk.github.io/ng-alain/tables/simple-table" data-url="https://cipchk.github.io/ng-alain/tables/simple-table">simple-talbe</a>\u3001<a target="_blank" href="https://cipchk.github.io/ng-alain/editor/ueditor" data-url="https://cipchk.github.io/ng-alain/editor/ueditor">UEditor</a>\u3001<a target="_blank" href="https://cipchk.github.io/ng-alain/editor/tinymce" data-url="https://cipchk.github.io/ng-alain/editor/tinymce">Tinymce</a>\u3001<a target="_blank" href="https://cipchk.github.io/ng-alain/other/split" data-url="https://cipchk.github.io/ng-alain/other/split">\u62c6\u5206\u89c6\u56fe</a>\u3001<a target="_blank" href="https://cipchk.github.io/ng-alain/other/clipboard" data-url="https://cipchk.github.io/ng-alain/other/clipboard">\u526a\u8d34\u677f</a> \u793a\u4f8b\u9875</p></li><li><p>\u4fee\u590d\u65e0\u6cd5\u542f\u52a8 HMR \u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/130" data-url="https://github.com/cipchk/ng-alain/issues/130">#130</a> <a target="_blank" href="https://github.com/cipchk/ng-alain/commit/fca17fe7f74303e70ee2cfbac4dac0e032d426f4" data-url="https://github.com/cipchk/ng-alain/commit/fca17fe7f74303e70ee2cfbac4dac0e032d426f4">Commit</a></p></li><li><p>\u4fee\u590di18n\u52a0\u8f7d\u987a\u5e8f\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/138" data-url="https://github.com/cipchk/ng-alain/issues/138">#138</a></p></li><li><p>\u91cd\u6784 <code>layout</code> \u6587\u4ef6\u5939\u7ed3\u6784\uff0c\u5c06 Pro \u7248\u672c\u7684\u7528\u6237\u9875\u8bbe\u7f6e\u4e3a\u9ed8\u8ba4\u6388\u6743\u9875</p></li><li><p>\u91cd\u6784\u5b50\u6a21\u5757\u8def\u914d\u7f6e\u6587\u4ef6\u72ec\u7acb\u4e3a <code>*-routing.module.ts</code> \u66f4\u7b26\u5408 cli \u751f\u6210\u89c4\u5219\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/117" data-url="https://github.com/cipchk/ng-alain/issues/117">#117</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u589e\u52a0 <code>nz-calendar</code> \u7ec4\u4ef6\u4e3b\u9898\u8272\uff0c<a target="_blank" href="https://github.com/cipchk/delon/pull/7" data-url="https://github.com/cipchk/delon/pull/7">#7</a> <a target="_blank" href="https://github.com/KennethMa" data-url="https://github.com/KennethMa">@KennethMa</a></p></li><li><p>\u589e\u52a0 <code>@aside-scrollbar-track-color</code> \u4fa7\u8fb9\u680f\u6eda\u52a8\u6761\u7684\u8f68\u9053\u989c\u8272</p></li><li><p>\u4fee\u590d <code>MenuService</code> \u5e26\u53c2\u6570\u65e0\u6cd5\u5339\u914d\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/125" data-url="https://github.com/cipchk/ng-alain/issues/125">#125</a></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u65b0\u589e <code>token_send_template</code> \u5c5e\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/112" data-url="https://github.com/cipchk/ng-alain/issues/112">#112</a></p></li><li><p>\u65b0\u589e <code>login_url</code> \u5c5e\u6027\uff0c\u83b7\u53d6\u5f53\u524d\u767b\u5f55\u9875\u8def\u7531\u5730\u5740</p></li><li><p>\u4fee\u590d\u7531\u4e8e\u65e0\u6cd5\u83b7\u53d6 <code>token</code> \u5bfc\u81f4\u62e6\u622a\u5668\u629b\u51fa\u5f02\u5e38</p></li><li><p>\u4fee\u590dJWT\u62e6\u622a\u5668\u65e0\u6cd5\u83b7\u53d6\u8fc7\u671f\u503c\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/8" data-url="https://github.com/cipchk/delon/issues/8">#8</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u65b0\u589e <code>reuse-tab</code> \u7ec4\u4ef6\uff0c\u89e3\u51b3\u4e0d\u540c\u8def\u7531\u9875\u5207\u6362\u65f6\u7ec4\u4ef6\u6570\u636e\u4e0d\u4e22\u5931\u95ee\u9898\uff0c<a href="/components/reuse-tab" data-url="/components/reuse-tab">Document</a></p></li><li><p>\u65b0\u589e <code>simple-talbe</code> \u7ec4\u4ef6\uff0c\u5229\u7528\u914d\u7f6e\u5feb\u901f\u6784\u5efa\u8868\u683c\u6570\u636e\uff0c<a href="/components/simple-table" data-url="/components/simple-table">Document</a></p></li><li><p>\u4fee\u590d <code>sidebar-nav</code> \u4fa7\u8fb9\u680f\u6536\u7f29\u65f6\u65e0\u6cd5\u81ea\u52a8\u9690\u85cf\u53ca\u8df3\u8f6c\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/128" data-url="https://github.com/cipchk/ng-alain/issues/128">#128</a></p></li><li><p>\u4fee\u590d <code>simple-table</code> \u65e0\u6cd5\u52a0\u8f7d\u7b2c\u4e00\u9875\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/122" data-url="https://github.com/cipchk/ng-alain/issues/122">#122</a></p></li><li><p>\u4f18\u5316\u7ec4\u4ef6\u6027\u80fd\u5c3d\u53ef\u80fd\u4f7f\u7528 <code>OnPush</code> \u7ef4\u62a4\u53d8\u66f4\u68c0\u6d4b\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/115" data-url="https://github.com/cipchk/ng-alain/issues/115">#115</a></p></li><li><p>\u4f18\u5316\u5229\u7528 <code>OnChange</code> \u7b80\u5316\u5c5e\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/103" data-url="https://github.com/cipchk/ng-alain/issues/103">#103</a></p></li><li><p>\u4f18\u5316G2\u52a0\u8f7d\u6027\u80fd\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/118" data-url="https://github.com/cipchk/ng-alain/issues/118">#118</a></p></li><li><p>\u91cd\u6784\u79fb\u9664\u6240\u6709 <code>host</code> \u5c5e\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/116" data-url="https://github.com/cipchk/ng-alain/issues/116">#116</a></p></li><li><p>\u91cd\u6784\u7b80\u5316\u6240\u6709\u7ec4\u4ef6\u5e03\u5c14\u3001\u6570\u5b57\u5c5e\u6027\u66f4\u53cb\u597d\u7684\u4f7f\u7528\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/issues/102" data-url="https://github.com/cipchk/ng-alain/issues/102">#102</a></p></li></ul></li></ul><h3 id="0.3.2">0.3.2<a onclick="window.location.hash = \'0.3.2\'" class="anchor">#</a></h3><p><code>2017-12-16</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u65b0\u589e <code>nz-table</code> \u6837\u5f0f\u7c7b <code>.img</code> \u8868\u793a\u56fe\u7247\u5f3a\u5236\u5927\u5c0f</p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u4fee\u590d\u65e0\u6cd5\u83b7\u53d6\u5b8c\u6574 Token \u5bf9\u8c61\uff0c<a target="_blank" href="https://github.com/cipchk/delon/issues/5" data-url="https://github.com/cipchk/delon/issues/5">#5</a></p></li></ul></li></ul><h3 id="0.3.1">0.3.1<a onclick="window.location.hash = \'0.3.1\'" class="anchor">#</a></h3><p><code>2017-12-15</code></p><ul><li><p>@delon/theme</p><ul><li><p>\u65b0\u589e\u91cd\u8f7d\u66f4\u591a <code>_HttpClient</code> \u7684 <code>get</code>\u3001<code>post</code>\u3001<code>delete</code> \u65b9\u6cd5</p></li><li><p>\u65b0\u589e\u5bfc\u51fa\u6240\u6709 Pipes</p></li><li><p>\u4fee\u590d <code>MenuService</code> \u91cd\u590d\u8c03\u7528 <code>resume</code> \u5bfc\u81f4\u5feb\u6377\u83dc\u5355\u91cd\u590d\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/107" data-url="https://github.com/cipchk/ng-alain/pull/107">#107</a></p></li></ul></li></ul><h3 id="0.3.0">0.3.0<a onclick="window.location.hash = \'0.3.0\'" class="anchor">#</a></h3><p><code>2017-12-14</code></p><ul><li><p>\u811a\u624b\u67b6 <a target="_blank" href="https://github.com/cipchk/ng-alain/commit/6d89f7468232de6c828ad9c735cd53087014587e" data-url="https://github.com/cipchk/ng-alain/commit/6d89f7468232de6c828ad9c735cd53087014587e">commit</a></p><ul><li><p>AppModule\uff1a\u5bfc\u5165 <code>@delon/auth</code> \u6a21\u5757</p></li><li><p>DefaultInterceptor\uff1aTOKEN\u4fe1\u606f\u7531 <code>@delon/auth</code> \u7684 <code>SimpleInterceptor</code> \u5904\u7406</p></li><li><p>PRO\u767b\u5f55\u9875\uff1a\u767b\u5f55\u9875\u57fa\u4e8e <code>@delon/auth</code> \u5b9e\u73b0\u8d26\u5bc6\u3001\u7b2c\u4e09\u65b9\u767b\u5f55\u52a8\u4f5c</p></li><li><p>\u65b0\u589e <code>callback</code> \u9875\u9762\uff0c\u7528\u4e8e\u56de\u8c03\u9875</p></li></ul></li><li><p>@delon/theme</p><ul><li><p><strong>BREAKING CHANGES</strong> MenuService\uff1a <code>setDefault</code> \u5df2\u8fc7\u671f\uff0c\u4f7f\u7528 <code>openedByUrl</code> \u66ff\u4ee3</p></li><li><p>_HttpClient\uff1a\u4fee\u590dJSONP\u53c2\u6570\u8f6c\u6362URL\u9519\u8bef\u95ee\u9898</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u4fee\u590d <code>sidebar-nav</code> \u5f53Edge\u6d4f\u89c8\u5668\u4e2d\u6536\u7f29\u4fa7\u8fb9\u680f\u65f6\u9519\u4f4d\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/100" data-url="https://github.com/cipchk/ng-alain/pull/100">#100</a></p></li><li><p>\u53d6\u6d88 <code>mini-bar</code> \u5728 Tooltip \u65f6\u663e\u793a\u8f85\u52a9\u6846</p></li></ul></li><li><p>@delon/acl</p><ul><li><p>\u4fee\u590d <code>can()</code> \u65b9\u6cd5\u4f20\u9012\u89d2\u8272\u6570\u7ec4\u65f6\u603b\u662f\u8fd4\u56de <code>false</code></p></li></ul></li><li><p>@delon/auth</p><ul><li><p>\u8ba4\u8bc1\u7c7b\u5e93\uff1a\u7528\u6237\u8ba4\u8bc1\u8fc7\u7a0b\u7684\u89e3\u51b3\u65b9\u6848\uff0c<a href="/docs/auth" data-url="/docs/auth">Document</a></p></li></ul></li></ul><h3 id="0.2.1">0.2.1<a onclick="window.location.hash = \'0.2.1\'" class="anchor">#</a></h3><p><code>2017-12-11</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u6784\u5efa\uff1a\u652f\u6301 Typescript 2.5</p></li><li><p>\u6784\u5efa\uff1a\u79fb\u9664 <code>@types/moment</code>\uff0c\u65b0\u7248\u672c\u81ea\u5e26\u5b9a\u4e49\u6587\u4ef6</p></li><li><p>\u4fee\u6b63 <code>NzSubject</code> \u4e0d\u652f\u6301 <code>boolean</code> \u503c\u8fd4\u56de\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/92" data-url="https://github.com/cipchk/ng-alain/pull/92">#92</a></p></li></ul></li><li><p>@delon/theme</p><ul><li><p>MenuService\uff1a\u589e\u52a0 <code>clear()</code> \u65b9\u6cd5\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/98" data-url="https://github.com/cipchk/ng-alain/pull/98">#98</a></p></li></ul></li><li><p>@delon/abc</p><ul><li><p>avatar-list-item\uff1a\u652f\u6301 <code>text</code>\u3001<code>icon</code> \u5c5e\u6027\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/93" data-url="https://github.com/cipchk/ng-alain/pull/93">#93</a></p></li></ul></li></ul><h3 id="0.2.0">0.2.0<a onclick="window.location.hash = \'0.2.0\'" class="anchor">#</a></h3><p><code>2017-12-09</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u91cd\u6784\uff1a\u7edf\u4e00\u7684\u8868\u5355\u6821\u9a8c\u7f16\u7801\u98ce\u683c</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u4fee\u590d <code>preloader</code>\u3001IE\u4e0b\u4fa7\u8fb9\u6846\u83dc\u5355\u6837\u5f0f\u95ee\u9898\uff0c<a target="_blank" href="https://github.com/cipchk/ng-alain/pull/67" data-url="https://github.com/cipchk/ng-alain/pull/67">#67</a> <a target="_blank" href="https://github.com/icycore" data-url="https://github.com/icycore">@icycore</a></p></li></ul></li></ul><h3 id="0.2.0-beta.2">0.2.0-beta.2<a onclick="window.location.hash = \'0.2.0-beta.2\'" class="anchor">#</a></h3><p><code>2017-12-06</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p><code>package.json</code> \u65b0\u589e <code>npm run analyze</code> \u547d\u4ee4</p></li></ul></li><li><p>@delon/theme</p><ul><li><p>\u652f\u6301 <code>nz-tree</code> \u4e3b\u9898\u989c\u8272</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u65b0\u589e <code>chart</code> \u81ea\u5b9a\u4e49G2\u7ec4\u4ef6\u5bb9\u5668</p></li><li><p>\u65b0\u589e <code>Validate</code>\u3001<code>_Validators</code> \u4e00\u5957\u9a8c\u8bc1\u7c7b\u4e0e\u8868\u5355\u9a8c\u8bc1\u5668</p></li></ul></li><li><p>@delon/acl</p><ul><li><p>\u65b0\u589e <code>[acl]</code> \u6307\u4ee4\uff0c\u7528\u4e8e\u5143\u7d20\uff08\u4f8b\u5982\uff1a\u6309\u94ae\uff09\u7c92\u5ea6\u7684\u6743\u9650\u63a7\u5236</p></li></ul></li></ul><h3 id="0.2.0-beta.1">0.2.0-beta.1<a onclick="window.location.hash = \'0.2.0-beta.1\'" class="anchor">#</a></h3><p><code>2017-12-05</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p><code>package.json</code> \u9ed8\u8ba4\u7248\u672c\u53f7\u8ddf <code>@delon/*</code> \u540c\u6b65</p></li></ul></li><li><p>@delon/abc</p><ul><li><p>\u65b0\u589e <code>count-down</code></p></li></ul></li></ul><h3 id="0.2.0-beta.0">0.2.0-beta.0<a onclick="window.location.hash = \'0.2.0-beta.0\'" class="anchor">#</a></h3><p><code>2017-12-04</code></p><ul><li><p>\u811a\u624b\u67b6</p><ul><li><p>\u5f15\u5165 <code>@delon/*</code> \u7cfb\u5217\u7c7b\u5e93\uff0c\u6781\u5927\u7b80\u5316 <code>core</code>\u3001<code>shared</code>\u3001<code>styles</code> \u7684\u4f7f\u7528\u65b9\u5f0f\uff1b\u82e5 <code>0.1</code> \u5219\u8bf7\u53c2\u8003<a href="/docs/010-020-changes" data-url="/docs/010-020-changes">\u5347\u7ea7\u6307\u5f15</a>\u3002</p></li></ul></li></ul></article>',meta:{order:100,title:{"en-US":"Changelog","zh-CN":"\u66f4\u65b0\u65e5\u5fd7"},type:"Other"},toc:[{href:"#1.5.2",title:"1.5.2",h:3},{href:"#1.5.1",title:"1.5.1",h:3},{href:"#1.5.0",title:"1.5.0",h:3},{href:"#1.4.5",title:"1.4.5",h:3},{href:"#1.4.4",title:"1.4.4",h:3},{href:"#1.4.3",title:"1.4.3",h:3},{href:"#1.4.2",title:"1.4.2",h:3},{href:"#1.4.1",title:"1.4.1",h:3},{href:"#1.4.0",title:"1.4.0",h:3},{href:"#1.3.3",title:"1.3.3",h:3},{href:"#1.3.2",title:"1.3.2",h:3},{href:"#1.3.1",title:"1.3.1",h:3},{href:"#1.3.0",title:"1.3.0",h:3},{href:"#1.2.0",title:"1.2.0",h:3},{href:"#1.1.5",title:"1.1.5",h:3},{href:"#1.1.4",title:"1.1.4",h:3},{href:"#1.1.3",title:"1.1.3",h:3},{href:"#1.1.2",title:"1.1.2",h:3},{href:"#1.1.1",title:"1.1.1",h:3},{href:"#1.1.0",title:"1.1.0",h:3},{href:"#1.0.8",title:"1.0.8",h:3},{href:"#1.0.7",title:"1.0.7",h:3},{href:"#1.0.6",title:"1.0.6",h:3},{href:"#1.0.5",title:"1.0.5",h:3},{href:"#1.0.4",title:"1.0.4",h:3},{href:"#1.0.3",title:"1.0.3",h:3},{href:"#1.0.2",title:"1.0.2",h:3},{href:"#1.0.1",title:"1.0.1",h:3},{href:"#1.0.1-beta.2@next",title:"1.0.1-beta.2@next",h:3},{href:"#1.0.0-beta.10@next",title:"1.0.0-beta.10@next",h:3},{href:"#1.0.0-beta.9@next",title:"1.0.0-beta.9@next",h:3},{href:"#1.0.0-beta.8@next",title:"1.0.0-beta.8@next",h:3},{href:"#1.0.0-beta.7@next",title:"1.0.0-beta.7@next",h:3},{href:"#1.0.0-beta.6@next",title:"1.0.0-beta.6@next",h:3},{href:"#1.0.0-beta.5@next",title:"1.0.0-beta.5@next",h:3},{href:"#0.8.2",title:"0.8.2",h:3},{href:"#1.0.0-beta.4@next",title:"1.0.0-beta.4@next",h:3},{href:"#1.0.0-beta.3@next",title:"1.0.0-beta.3@next",h:3},{href:"#1.0.0-beta.2@next",title:"1.0.0-beta.2@next",h:3},{href:"#1.0.0-beta.1@next",title:"1.0.0-beta.1@next",h:3},{href:"#0.8.1",title:"0.8.1",h:3},{href:"#0.8.0",title:"0.8.0",h:3},{href:"#0.7.1",title:"0.7.1",h:3},{href:"#0.7.0",title:"0.7.0",h:3},{href:"#0.6.7",title:"0.6.7",h:3},{href:"#0.6.6",title:"0.6.6",h:3},{href:"#0.6.5",title:"0.6.5",h:3},{href:"#0.6.4",title:"0.6.4",h:3},{href:"#0.6.3",title:"0.6.3",h:3},{href:"#0.6.2",title:"0.6.2",h:3},{href:"#0.6.1",title:"0.6.1",h:3},{href:"#0.6.0",title:"0.6.0",h:3},{href:"#0.5.0",title:"0.5.0",h:3},{href:"#0.4.4",title:"0.4.4",h:3},{href:"#0.4.3",title:"0.4.3",h:3},{href:"#0.4.2",title:"0.4.2",h:3},{href:"#0.4.0",title:"0.4.0",h:3},{href:"#0.3.2",title:"0.3.2",h:3},{href:"#0.3.1",title:"0.3.1",h:3},{href:"#0.3.0",title:"0.3.0",h:3},{href:"#0.2.1",title:"0.2.1",h:3},{href:"#0.2.0",title:"0.2.0",h:3},{href:"#0.2.0-beta.2",title:"0.2.0-beta.2",h:3},{href:"#0.2.0-beta.1",title:"0.2.0-beta.1",h:3},{href:"#0.2.0-beta.0",title:"0.2.0-beta.0",h:3}]}},demo:!1},this.codes=[]},r=function(){this.item={cols:1,urls:{"zh-CN":"docs/cli.md"},content:{"zh-CN":{content:'<article><p><a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177\u6587\u6863</a>\u3002</p></article>',meta:{order:10,title:{"en-US":"Cli","zh-CN":"\u547d\u4ee4\u884c\u5de5\u5177"},type:"Other"},toc:[]}},demo:!1},this.codes=[]},u=function(){this.item={cols:1,urls:{"zh-CN":"docs/contributing.md"},content:{"zh-CN":{content:'<article><p>\u8fd9\u7bc7\u6307\u5357\u4f1a\u6307\u5bfc\u4f60\u5982\u4f55\u4e3a ng-alain \u8d21\u732e\u4e00\u4efd\u81ea\u5df1\u7684\u529b\u91cf\uff0c\u8bf7\u5728\u4f60\u8981\u63d0 issue \u6216\u8005 pull request \u4e4b\u524d\u82b1\u51e0\u5206\u949f\u6765\u9605\u8bfb\u4e00\u904d\u8fd9\u7bc7\u6307\u5357\u3002</p><h2 id="\u884c\u4e3a\u51c6\u5219">\u884c\u4e3a\u51c6\u5219<a onclick="window.location.hash = \'\u884c\u4e3a\u51c6\u5219\'" class="anchor">#</a></h2><p>\u6211\u4eec\u6709\u4e00\u4efd <a target="_blank" href="https://github.com/cipchk/delon/blob/master/CODE_OF_CONDUCT.md" data-url="https://github.com/cipchk/delon/blob/master/CODE_OF_CONDUCT.md">\u884c\u4e3a\u51c6\u5219</a>\uff0c\u5e0c\u671b\u6240\u6709\u7684\u8d21\u732e\u8005\u90fd\u80fd\u9075\u5b88\uff0c\u8bf7\u82b1\u65f6\u95f4\u9605\u8bfb\u4e00\u904d\u5168\u6587\u4ee5\u786e\u4fdd\u4f60\u80fd\u660e\u767d\u54ea\u4e9b\u662f\u53ef\u4ee5\u505a\u7684\uff0c\u54ea\u4e9b\u662f\u4e0d\u53ef\u4ee5\u505a\u7684\u3002</p><h2 id="\u900f\u660e\u7684\u5f00\u53d1">\u900f\u660e\u7684\u5f00\u53d1<a onclick="window.location.hash = \'\u900f\u660e\u7684\u5f00\u53d1\'" class="anchor">#</a></h2><p>\u6211\u4eec\u6240\u6709\u7684\u5de5\u4f5c\u90fd\u4f1a\u653e\u5728 <a target="_blank" href="https://github.com/cipchk/ng-alain" data-url="https://github.com/cipchk/ng-alain">ng-alain</a>\u3001<a target="_blank" href="https://github.com/cipchk/delon" data-url="https://github.com/cipchk/delon">delon</a> \u4e0a\u3002\u4e0d\u7ba1\u662f\u6838\u5fc3\u56e2\u961f\u7684\u6210\u5458\u8fd8\u662f\u5916\u90e8\u8d21\u732e\u8005\u7684 pull request \u90fd\u9700\u8981\u7ecf\u8fc7\u540c\u6837\u6d41\u7a0b\u7684 review\u3002</p><h2 id="Bugs">Bugs<a onclick="window.location.hash = \'Bugs\'" class="anchor">#</a></h2><p>\u6211\u4eec\u4f7f\u7528 <a target="_blank" href="https://github.com/cipchk/ng-alain/issues" data-url="https://github.com/cipchk/ng-alain/issues">GitHub Issues</a> \u6765\u505a bug \u8ffd\u8e2a\u3002 \u5982\u679c\u4f60\u60f3\u8981\u4f60\u53d1\u73b0\u7684 bug \u88ab\u5feb\u901f\u89e3\u51b3\uff0c\u6700\u597d\u7684\u529e\u6cd5\u5c31\u662f\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\uff1b\u5e76\u4e14\u80fd\u4f7f\u7528\u8fd9\u4e2a <a target="_blank" href="https://stackblitz.com/edit/ng-alain-setup" data-url="https://stackblitz.com/edit/ng-alain-setup">\u6a21\u677f</a> \u6765\u63d0\u4f9b\u91cd\u73b0\u3002</p><p>\u5728\u4f60\u62a5\u544a\u4e00\u4e2a bug \u4e4b\u524d\uff0c\u8bf7\u5148\u786e\u4fdd\u5df2\u7ecf\u641c\u7d22\u8fc7\u5df2\u6709\u7684 issue \u548c\u9605\u8bfb\u4e86 <a href="https://ng-alain.com/" data-url="https://ng-alain.com/">\u6587\u6863\u7ad9</a>\u3002</p><h2 id="\u65b0\u589e\u529f\u80fd">\u65b0\u589e\u529f\u80fd<a onclick="window.location.hash = \'\u65b0\u589e\u529f\u80fd\'" class="anchor">#</a></h2><p>\u5982\u679c\u4f60\u6709\u6539\u8fdb\u6211\u4eec\u7684 API \u6216\u8005\u65b0\u589e\u529f\u80fd\u7684\u60f3\u6cd5\uff0c\u540c\u6837\u6309\u7167 issues \u5448\u73b0\u7684\u6a21\u677f\u8ba4\u771f\u586b\u5199\u6bcf\u4e00\u9879\u3002</p><h2 id="\u7b2c\u4e00\u6b21\u8d21\u732e">\u7b2c\u4e00\u6b21\u8d21\u732e<a onclick="window.location.hash = \'\u7b2c\u4e00\u6b21\u8d21\u732e\'" class="anchor">#</a></h2><p>\u5982\u679c\u4f60\u8fd8\u4e0d\u6e05\u695a\u600e\u4e48\u5728 GitHub \u4e0a\u63d0 Pull Request \uff0c\u53ef\u4ee5\u9605\u8bfb\u4e0b\u9762\u8fd9\u7bc7\u6587\u7ae0\u6765\u5b66\u4e60\uff1a</p><p><a target="_blank" href="https://segmentfault.com/a/1190000000736629" data-url="https://segmentfault.com/a/1190000000736629">\u5982\u4f55\u4f18\u96c5\u5730\u5728 GitHub \u4e0a\u8d21\u732e\u4ee3\u7801</a></p><p>\u4e3a\u4e86\u80fd\u5e2e\u52a9\u4f60\u5f00\u59cb\u4f60\u7684\u7b2c\u4e00\u6b21\u5c1d\u8bd5\uff0c\u6211\u4eec\u7528 <a target="_blank" href="https://github.com/cipchk/ng-alain/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22" data-url="https://github.com/cipchk/ng-alain/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22">good first issues</a> \u6807\u8bb0\u4e86\u4e00\u4e9b\u6bd4\u8f83\u6bd4\u8f83\u5bb9\u6613\u4fee\u590d\u7684 bug \u548c\u5c0f\u529f\u80fd\u3002\u8fd9\u4e9b issue \u53ef\u4ee5\u5f88\u597d\u5730\u505a\u4e3a\u4f60\u7684\u9996\u6b21\u5c1d\u8bd5\u3002</p><p>\u5982\u679c\u4f60\u6253\u7b97\u5f00\u59cb\u5904\u7406\u4e00\u4e2a issue\uff0c\u8bf7\u5148\u68c0\u67e5\u4e00\u4e0b issue \u4e0b\u9762\u7684\u7559\u8a00\u4ee5\u786e\u4fdd\u6ca1\u6709\u522b\u4eba\u6b63\u5728\u5904\u7406\u8fd9\u4e2a issue\u3002\u5982\u679c\u5f53\u524d\u6ca1\u6709\u4eba\u5728\u5904\u7406\u7684\u8bdd\u4f60\u53ef\u4ee5\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u4f60\u5c06\u4f1a\u5904\u7406\u8fd9\u4e2a issue\uff0c\u4ee5\u514d\u522b\u4eba\u91cd\u590d\u52b3\u52a8\u3002</p><p>\u5982\u679c\u4e4b\u524d\u6709\u4eba\u7559\u8a00\u8bf4\u4f1a\u5904\u7406\u8fd9\u4e2a issue \u4f46\u662f\u4e00\u4e24\u4e2a\u661f\u671f\u90fd\u6ca1\u6709\u52a8\u9759\uff0c\u90a3\u4e48\u4f60\u4e5f\u53ef\u4ee5\u63a5\u624b\u5904\u7406\u8fd9\u4e2a issue\uff0c\u5f53\u7136\u8fd8\u662f\u9700\u8981\u7559\u8a00\u544a\u77e5\u5176\u4ed6\u4eba\u3002</p><h2 id="Pull-Request">Pull Request<a onclick="window.location.hash = \'Pull-Request\'" class="anchor">#</a></h2><p>Ng Alain \u4f1a\u5173\u6ce8\u6240\u6709\u7684 pull request\uff0c\u6211\u4eec\u4f1a review \u4ee5\u53ca\u5408\u5e76\u4f60\u7684\u4ee3\u7801\uff0c\u4e5f\u6709\u53ef\u80fd\u8981\u6c42\u4f60\u505a\u4e00\u4e9b\u4fee\u6539\u6216\u8005\u544a\u8bc9\u4f60\u6211\u4eec\u4e3a\u4ec0\u4e48\u4e0d\u80fd\u63a5\u53d7\u8fd9\u6837\u7684\u4fee\u6539\u3002</p><p><strong>\u5728\u4f60\u53d1\u9001 Pull Request \u4e4b\u524d</strong>\uff0c\u8bf7\u786e\u8ba4\u4f60\u662f\u6309\u7167\u4e0b\u9762\u7684\u6b65\u9aa4\u6765\u505a\u7684\uff1a</p><ol><li><p>\u5728\u9879\u76ee\u6839\u76ee\u5f55\u4e0b\u8fd0\u884c\u4e86 <code>npm install</code> \u6216 <code>yarn</code>\u3002</p></li><li><p>\u5982\u679c\u4f60\u4fee\u590d\u4e86\u4e00\u4e2a bug \u6216\u8005\u65b0\u589e\u4e86\u4e00\u4e2a\u529f\u80fd\uff0c\u8bf7\u786e\u4fdd\u5199\u4e86\u76f8\u5e94\u7684\u6d4b\u8bd5\uff0c\u8fd9\u5f88\u91cd\u8981\u3002</p></li><li><p>\u786e\u8ba4\u6240\u6709\u7684\u6d4b\u8bd5\u90fd\u662f\u901a\u8fc7\u7684 <code>npm run test</code>\u3002</p></li><li><p>\u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u901a\u8fc7\u4e86 lint \u68c0\u67e5 <code>npm run lint</code>\u3002\u5c0f\u8d34\u58eb: Lint \u4f1a\u5728\u4f60 <code>git commit</code> \u7684\u65f6\u5019\u81ea\u52a8\u8fd0\u884c\u3002</p></li><li><p>\u786e\u4fdd\u4f60\u7684\u4ee3\u7801\u5728\u63d0\u4ea4\u4e4b\u524d\u7ecf\u8fc7\u4e86\u6b63\u786e\u7684 <a target="_blank" href="https://www.digitalocean.com/community/tutorials/how-to-rebase-and-update-a-pull-request" data-url="https://www.digitalocean.com/community/tutorials/how-to-rebase-and-update-a-pull-request">Rebase</a></p></li><li><p>\u786e\u4fdd\u4f60\u7684\u63d0\u4ea4\u7b26\u5408<a target="_blank" href="https://github.com/cipchk/delon/blob/master/CONTRIBUTING.md#-commit-message-guidelines" data-url="https://github.com/cipchk/delon/blob/master/CONTRIBUTING.md#-commit-message-guidelines">\u89c4\u8303</a></p></li></ol><h2 id="\u5f00\u53d1\u6d41\u7a0b">\u5f00\u53d1\u6d41\u7a0b<a onclick="window.location.hash = \'\u5f00\u53d1\u6d41\u7a0b\'" class="anchor">#</a></h2><p>\u5728\u4f60 clone \u4e86 ng-alain \u6216 delon \u7684\u4ee3\u7801\u5e76\u4e14\u4f7f\u7528 <code>npm install</code> \u5b89\u88c5\u5b8c\u4f9d\u8d56\u540e\uff0c\u4f60\u8fd8\u53ef\u4ee5\u8fd0\u884c\u4e0b\u9762\u51e0\u4e2a\u5e38\u7528\u7684\u547d\u4ee4\uff1a</p><h3 id="delon-\u57fa\u5efa\u7c7b\u5e93">delon \u57fa\u5efa\u7c7b\u5e93<a onclick="window.location.hash = \'delon-\u57fa\u5efa\u7c7b\u5e93\'" class="anchor">#</a></h3><ol><li><p><code>ng serve</code> \u5728\u672c\u5730\u8fd0\u884c\u6d4b\u8bd5\u7f51\u7ad9\u3002</p></li><li><p><code>ng serve site</code> \u5728\u672c\u5730\u8fd0\u884c ng-alain.com \u7f51\u7ad9\u3002</p></li><li><p><code>npm run lint</code> \u68c0\u67e5 packages \u4ee3\u7801\u98ce\u683c\u3002</p></li><li><p><code>npm test</code> \u8fd0\u884c packages \u6240\u6709\u7c7b\u5e93\u6d4b\u8bd5\u3002</p></li><li><p><code>npm run release</code> \u6784\u5efa packages \u53d1\u5e03\u5305\u3002</p></li></ol><h3 id="ng-alain-\u811a\u624b\u67b6">ng-alain \u811a\u624b\u67b6<a onclick="window.location.hash = \'ng-alain-\u811a\u624b\u67b6\'" class="anchor">#</a></h3><ol><li><p><code>npm start</code> \u5728\u672c\u5730\u8fd0\u884c\u811a\u624b\u67b6\u3002</p></li><li><p><code>npm run lint</code> \u68c0\u67e5\u4ee3\u7801\u98ce\u683c\u3002</p></li><li><p><code>npm test</code> \u8fd0\u884c\u6d4b\u8bd5\u3002</p></li><li><p><code>npm run build</code> \u6784\u5efa\u751f\u4ea7\u73af\u5883\u7f51\u7ad9\u3002</p></li></ol></article>',meta:{order:40,title:{"en-US":"Contributing","zh-CN":"\u8d21\u732e\u6307\u5357"},type:"Other"},toc:[{href:"#\u884c\u4e3a\u51c6\u5219",title:"\u884c\u4e3a\u51c6\u5219",h:2},{href:"#\u900f\u660e\u7684\u5f00\u53d1",title:"\u900f\u660e\u7684\u5f00\u53d1",h:2},{href:"#Bugs",title:"Bugs",h:2},{href:"#\u65b0\u589e\u529f\u80fd",title:"\u65b0\u589e\u529f\u80fd",h:2},{href:"#\u7b2c\u4e00\u6b21\u8d21\u732e",title:"\u7b2c\u4e00\u6b21\u8d21\u732e",h:2},{href:"#Pull-Request",title:"Pull Request",h:2},{href:"#\u5f00\u53d1\u6d41\u7a0b",title:"\u5f00\u53d1\u6d41\u7a0b",h:2},{href:"#delon-\u57fa\u5efa\u7c7b\u5e93",title:"delon \u57fa\u5efa\u7c7b\u5e93",h:3},{href:"#ng-alain-\u811a\u624b\u67b6",title:"ng-alain \u811a\u624b\u67b6",h:3}]}},demo:!1},this.codes=[]},g=function(){this.item={cols:1,urls:{"zh-CN":"docs/deploy.md"},content:{"zh-CN":{content:'<article><h2 id="\u6784\u5efa">\u6784\u5efa<a onclick="window.location.hash = \'\u6784\u5efa\'" class="anchor">#</a></h2><p>\u5f53\u9879\u76ee\u5f00\u53d1\u5b8c\u6bd5\uff0c\u53ea\u9700\u8981\u8fd0\u884c\u4e00\u884c\u547d\u4ee4\u5c31\u53ef\u4ee5\u6253\u5305\u4f60\u7684\u5e94\u7528\uff1a</p><pre class="hljs language-bash"><code>$ npm run build</code></pre><p>ng-alain \u672c\u8eab\u662f\u4e00\u4e2a Angular CLI \u9879\u76ee\uff0c\u56e0\u6b64\u4e5f\u53ef\u4ee5\u53c2\u7167 <a target="_blank" href="https://github.com/angular/angular-cli/wiki/build" data-url="https://github.com/angular/angular-cli/wiki/build">WiKi</a> \u5b8c\u6574\u66f4\u590d\u6742\u7684\u6784\u5efa\u9700\u6c42\u3002\u6784\u5efa\u6253\u5305\u6210\u529f\u4e4b\u540e\uff0c\u4f1a\u5728\u6839\u76ee\u5f55\u751f\u6210 <code>dist</code> \u6587\u4ef6\u5939\uff0c\u91cc\u9762\u5c31\u662f\u6784\u5efa\u6253\u5305\u597d\u7684\u6587\u4ef6\uff0c\u901a\u5e38\u662f\u82e5\u5e72 <code>*.js</code>\u3001<code>*.css</code>\u3001<code>index.html</code> \u7b49\u9759\u6001\u6587\u4ef6\u3002</p><h3 id="\u73af\u5883\u53d8\u91cf">\u73af\u5883\u53d8\u91cf<a onclick="window.location.hash = \'\u73af\u5883\u53d8\u91cf\'" class="anchor">#</a></h3><p>\u5f53\u4f60\u9700\u8981\u533a\u522b\u5f00\u53d1\u548c\u90e8\u7f72\u4ee5\u53ca\u6d4b\u8bd5\u73af\u5883\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u901a\u8fc7 <code>src/environments</code> \u6587\u4ef6\u5939\u6839\u636e\u4e0d\u540c\u73af\u5883\u914d\u7f6e\u76f8\u5e94\u7684\u53c2\u6570\uff0c\u914d\u7f6e\u9879\u540c\u65f6\u4e5f\u53ef\u4ee5\u5728\u5e94\u7528\u5f53\u4e2d\u76f4\u63a5\u8c03\u7528\u5b83\u4eec\u3002\u540c\u65f6\uff0c\u8fd8\u9700\u8981\u914d\u7f6e <code>angular.json</code> \u5185\u7684\u914d\u7f6e\u9879\uff0c\u6700\u540e\u4f60\u53ef\u4ee5\u900f\u8fc7\u547d\u4ee4\u6539\u53d8\u73af\u5883\u914d\u7f6e\u3002</p><h3 id="\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef">\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef<a onclick="window.location.hash = \'\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef\'" class="anchor">#</a></h3><p>\u5982\u679c\u4f60\u7684\u6784\u5efa\u6587\u4ef6\u5f88\u5927\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7 <code>analyze</code> \u547d\u4ee4\u6784\u5efa\u5e76\u5206\u6790\u4f9d\u8d56\u6a21\u5757\u7684\u4f53\u79ef\u5206\u5e03\uff0c\u4ece\u800c\u4f18\u5316\u4f60\u7684\u4ee3\u7801\u3002</p><pre class="hljs language-bash"><code>$ npm run analyze</code></pre><p>\u7136\u540e\u901a\u8fc7 <code>webpack-bundle-analyzer dist/stats.json</code> \u6216 //webpack.github.io/analyse \u67e5\u770b\u4f53\u79ef\u5206\u5e03\u6570\u636e\u3002</p><p><img src="./assets/screenshot/analyzer.png" /></p><h2 id="\u53d1\u5e03">\u53d1\u5e03<a onclick="window.location.hash = \'\u53d1\u5e03\'" class="anchor">#</a></h2><p>\u5bf9\u4e8e\u53d1\u5e03\u6765\u8bb2\uff0c\u53ea\u9700\u8981\u5c06\u6700\u7ec8\u751f\u6210\u7684\u9759\u6001\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f\u901a\u5e38\u60c5\u51b5\u4e0b <code>dist</code> \u6587\u4ef6\u5939\u7684\u9759\u6001\u6587\u4ef6\u53d1\u5e03\u5230\u4f60\u7684 cdn \u6216\u8005\u9759\u6001\u670d\u52a1\u5668\u5373\u53ef\uff0c\u9700\u8981\u6ce8\u610f\u7684\u662f\u5176\u4e2d\u7684 <code>index.html</code> \u901a\u5e38\u4f1a\u662f\u4f60\u540e\u53f0\u670d\u52a1\u7684\u5165\u53e3\u9875\u9762\uff0c\u5728\u786e\u5b9a\u4e86 js \u548c css \u7684\u9759\u6001\u4e4b\u540e\u53ef\u80fd\u9700\u8981\u6539\u53d8\u9875\u9762\u7684\u5f15\u5165\u8def\u5f84\u3002</p><p>\u9ed8\u8ba4\u7684\u9759\u6001\u8d44\u6e90\u5f15\u7528\u8def\u5f84\u76f4\u63a5\u6307\u5411 <code>dist</code> \u6587\u4ef6\u5939\u53d1\u5e03\u6240\u5904\u5e94\u7528\u7684\u76ee\u5f55\u4e0b\uff0c\u4f8b\u5982\u4f60\u5c06 <code>dist</code> \u53d1\u5e03\u81f3 <code>ng-alain.com</code> \u7ad9\u70b9\u7684\u6839\u76ee\u5f55\u91cc\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f <code>//ng-alain.com/***.js</code>\u3001<code>//ng-alain.com/***.css</code>\uff0c\u82e5 <code>dist</code> \u53d1\u5e03\u81f3\u67d0\u7ad9\u70b9\u4e0b\u67d0\u4e2a\u76ee\u5f55\u5982 <code>v2</code> \u6587\u4ef6\u5939\u4e0b\uff0c\u5219\u8bf7\u6c42\u7684\u7f51\u5740\u662f <code>//ng-alain.com/v2/***.js</code>\u3001<code>//ng-alain.com/v2/***.css</code>\u3002</p><p>\u5982\u679c\u4f60\u7684\u9759\u6001\u8d44\u6e90\u662f\u90e8\u7f72\u5230\u5176\u4ed6\u57df\u540d\uff08\u4f8b\u5982\u72ec\u7acb\u7684 cdn \u5730\u5740\uff09\uff0c\u4f60\u53ef\u4ee5\u900f\u8fc7 <code>-d</code> \u53c2\u6570\u6307\u5b9a\u4e00\u4e2a cdn \u5730\u5740\u3002</p><pre class="hljs language-bash"><code>$ ng build --prod --build-optimizer -d=//cdn.ng-alain.com/</code></pre><p>\u8fd9\u6837\u751f\u6210\u7684 <code>index.html</code> \u5185 <code>*.js</code>\u3001<code>*.css</code> \u4f1a\u81ea\u52a8\u52a0\u4e0a <code>//cdn.ng-alain.com/*.js</code>\u3002</p><h3 id="\u8def\u7531\u7b56\u7565">\u8def\u7531\u7b56\u7565<a onclick="window.location.hash = \'\u8def\u7531\u7b56\u7565\'" class="anchor">#</a></h3><p>Angular \u524d\u7aef\u8def\u7531\u6709\u4e24\u79cd\u4e0d\u540c\u7b56\u7565 <code>HashLocationStrategy</code> \u548c <code>PathLocationStrategy</code>\u3002\u524d\u8005\u662f\u4ee5 <code>#</code> \u540e\u9762\u7684\u8def\u5f84\u8fdb\u884c\u8def\u7531\u5904\u7406\uff0c\u901a\u8fc7 <a target="_blank" href="//developer.mozilla.org/en-US/docs/Web/API/History_API" data-url="//developer.mozilla.org/en-US/docs/Web/API/History_API">HTML5 History</a> \u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\uff0c\u800c\u540e\u8005\u5219\u662f\u7c7b\u4f3c\u9875\u9762\u8bbf\u95ee\u8def\u5f84\u5e76\u6ca1\u6709 <code>#</code>\uff0c\u901a\u8fc7\u670d\u52a1\u7aef\u7684\u914d\u7f6e\uff0c\u80fd\u591f\u8bbf\u95ee\u6307\u5b9a URL \u90fd\u5b9a\u5411\u5230\u5f53\u524d\u9875\u9762\uff0c\u4ece\u800c\u80fd\u591f\u8fdb\u884c\u524d\u7aef\u8def\u7531\u7ba1\u7406\u3002</p><p>\u5982\u679c\u4f60\u60f3\u91c7\u7528 <code>PathLocationStrategy</code> \u7b56\u7565\uff0c\u5219\u9700\u8981\u5c06 <code>./src/app/routes/routes.module.ts</code> \u7684 <code>RouterModule.forRoot(routes, { useHash: true })</code> \u6362\u6210 <code>RouterModule.forRoot(routes)</code>\u3002\u540c\u65f6\u9700\u8981\u670d\u52a1\u7aef\u505a\u4e00\u4e2a\u6620\u5c04\uff0c\u6bd4\u5982\uff1a</p><p>express \u7684\u4f8b\u5b50\uff1a</p><pre class="hljs language-js"><code>app.use(express.static(path.join(__dirname, \'build\')));\n\napp.get(\'/*\', function (req, res) {\n res.sendFile(path.join(__dirname, \'build\', \'index.html\'));\n});</code></pre><p>egg \u7684\u4f8b\u5b50\uff1a</p><pre class="hljs language-js"><code>// controller\nexports.index = function* () {\n yield this.render(\'App.jsx\', {\n context: {\n user: this.session.user,\n },\n });\n};\n\n// router\napp.get(\'home\', \'/*\', \'home.index\');</code></pre><p>\u6709\u5173\u66f4\u591a Angular \u8def\u7531\u76f8\u5f53\u95ee\u9898\uff0c\u8bf7\u9605\u8bfb<a target="_blank" href="//angular.io/guide/router" data-url="//angular.io/guide/router">\u5b98\u7f51</a>\u3002</p><h3 id="Docker">Docker<a onclick="window.location.hash = \'Docker\'" class="anchor">#</a></h3><p>ng-alain \u63d0\u4f9b\u4e86\u4e00\u4e2a\u57fa\u4e8e <code>nginx</code> WEB\u670d\u52a1\u5b8c\u6574\u7684\u6784\u5efaAngular\u9879\u76ee\u7684\u955c\u50cf\u6587\u4ef6\u3002\u5176\u4e2d <code>nginx</code> \u662f\u91c7\u7528 <a target="_blank" href="https://github.com/nginxinc/docker-nginx/blob/master/mainline/alpine/Dockerfile" data-url="https://github.com/nginxinc/docker-nginx/blob/master/mainline/alpine/Dockerfile">nginx:1.13.5-alpine</a> \u7684\u955c\u50cf\uff0c\u57fa\u672c\u4e0a\u53ef\u4ee5\u6ee1\u8db3 ng-alain \u9879\u76ee\u7684\u826f\u597d\u8fd0\u884c\u73af\u5883\uff0c\u5018\u82e5\u6709\u66f4\u591a\u9700\u6c42\uff0c\u4f60\u53ef\u4ee5\u5229\u7528 <code>docker run</code> \u8f7b\u6613\u7684\u6307\u5b9a <em>nginx.conf</em>\u3002</p><h4 id="1\u3001\u6784\u5efa\u955c\u50cf">1\u3001\u6784\u5efa\u955c\u50cf<a onclick="window.location.hash = \'1\u3001\u6784\u5efa\u955c\u50cf\'" class="anchor">#</a></h4><p>\u6839\u636e Dockerfile \u6784\u5efa\u4e00\u4e2a\u5b8c\u6574\u7684 ng-alain \u6240\u9700\u8981\u7684\u8fd0\u884c\u73af\u5883\u7684\u955c\u50cf\u3002</p><pre class="hljs language-bash"><code>$ docker build -t ng-alain .</code></pre><h4 id="2\u3001\u8fd0\u884c">2\u3001\u8fd0\u884c<a onclick="window.location.hash = \'2\u3001\u8fd0\u884c\'" class="anchor">#</a></h4><p><strong>\u57fa\u4e8ecompose\uff08\u63a8\u8350\uff09</strong></p><pre class="hljs language-bash"><code>$ docker-compose up -d</code></pre><p>\u5176\u7ec6\u8282\u53ef\u4ee5\u901a\u8fc7 <code>docker-compose.yml</code> \u4fee\u6539\u3002</p><p><strong>\u57fa\u4e8e\u547d\u4ee4\u5f0f</strong></p><pre class="hljs language-bash"><code>$ docker run -d -p 80:80 --name alain ng-alain</code></pre><p>\u6700\u540e\u4f60\u53ef\u4ee5\u8bbf\u95ee\uff1a<a target="_blank" href="http://localhost/" data-url="http://localhost/">http://localhost/</a></p><h4 id="3\u3001\u5173\u4e8eSSL">3\u3001\u5173\u4e8eSSL<a onclick="window.location.hash = \'3\u3001\u5173\u4e8eSSL\'" class="anchor">#</a></h4><p>ng-alain \u63d0\u4f9b\u7684 Dockerfile \u6587\u4ef6\u76f8\u5bf9\u4e8e\u6bd4\u8f83\u7b80\u5355\uff0c\u800c\u5b9e\u9645\u9879\u76ee\u4e2d\u6700\u5e38\u7528\u7684\u662f\u5bf9SSL\u7684\u652f\u6301\u3002</p><p>\u56e0\u6b64\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f60\u53ef\u4ee5\u5c06\u8bc1\u4e66\u653e\u7f6e <code>_nginx/ssl</code> \u76ee\u5f55\u4e0b\uff0c\u5e76\u5f00\u542f <code>_nginx/default.conf</code> \u76f8\u5173SSL\u914d\u7f6e\u9879\u5373\u53ef\u3002</p><p>\u6700\u540e\uff0c\u589e\u52a0 <code>docker-compose.yml</code> \u7684 <code>ports</code> \u8282\u70b9\uff1a</p><pre class="hljs language-null"><code>- 443:443</code></pre><h3 id="\u5bb9\u5668\u90e8\u7f72">\u5bb9\u5668\u90e8\u7f72<a onclick="window.location.hash = \'\u5bb9\u5668\u90e8\u7f72\'" class="anchor">#</a></h3><p>\u53c2\u8003 <a target="_blank" href="https://zhuanlan.zhihu.com/p/35688938" data-url="https://zhuanlan.zhihu.com/p/35688938">Angular \u5bb9\u5668\u90e8\u7f72</a>\u3002</p></article>',meta:{order:70,title:{"en-US":"Build & Deploy","zh-CN":"\u6784\u5efa\u548c\u53d1\u5e03"},type:"Dev"},toc:[{href:"#\u6784\u5efa",title:"\u6784\u5efa",h:2},{href:"#\u73af\u5883\u53d8\u91cf",title:"\u73af\u5883\u53d8\u91cf",h:3},{href:"#\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",title:"\u5206\u6790\u6784\u5efa\u6587\u4ef6\u4f53\u79ef",h:3},{href:"#\u53d1\u5e03",title:"\u53d1\u5e03",h:2},{href:"#\u8def\u7531\u7b56\u7565",title:"\u8def\u7531\u7b56\u7565",h:3},{href:"#Docker",title:"Docker",h:3},{href:"#\u5bb9\u5668\u90e8\u7f72",title:"\u5bb9\u5668\u90e8\u7f72",h:3}]}},demo:!1},this.codes=[]},m=function(){this.item={cols:1,urls:{"zh-CN":"docs/faq.md"},content:{"zh-CN":{content:'<article><p>\u63d0\u95ee\u4e4b\u524d\uff0c\u8bf7\u5148\u67e5\u9605\u4e0b\u9762\u7684\u5e38\u89c1\u95ee\u9898\u3002</p><h2 id="\u5982\u4f55\u8986\u76d6-@delon/*-\u7684\u914d\u7f6e">\u5982\u4f55\u8986\u76d6 @delon/* \u7684\u914d\u7f6e<a onclick="window.location.hash = \'\u5982\u4f55\u8986\u76d6-@delon/*-\u7684\u914d\u7f6e\'" class="anchor">#</a></h2><pre class="hljs language-$1"><code>// delon.module.ts\nimport { DelonAuthConfig } from \'@delon/auth\';\nexport function delonAuthConfig(): DelonAuthConfig {\n return Object.assign(new DelonAuthConfig(), <DelonAuthConfig>{\n login_url: \'/passport/login\'\n });\n}\n\n@NgModule({})\nexport class DelonModule {\n static forRoot(): ModuleWithProviders {\n return {\n ngModule: DelonModule,\n providers: [\n { provide: DelonAuthConfig, useFactory: delonAuthConfig}\n ]\n };\n }\n}</code></pre><h2 id="\u5982\u4f55\u672c\u5730\u90e8\u7f72-antd-\u56fe\u6807\uff1f">\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u672c\u5730\u90e8\u7f72-antd-\u56fe\u6807\uff1f\'" class="anchor">#</a></h2><p>\u9996\u5148\uff0c\u6700\u65b0\u7684 iconfont \u6587\u4ef6\u53ef\u4ee5\u5230 <a target="_blank" href="https://ant.design/docs/spec/download-cn" data-url="https://ant.design/docs/spec/download-cn">\u6b64\u94fe\u63a5</a>\uff08<a target="_blank" href="http://ant-design.gitee.io/docs/spec/download-cn" data-url="http://ant-design.gitee.io/docs/spec/download-cn">\u955c\u50cf</a>\uff09 \u4e0b\u8f7d\u3002</p><p>\u6700\u540e\uff0c\u5728 <code>src/styles/theme.less</code> \u91cd\u65b0\u5b9a\u4e49\u65b0\u7684\u8def\u5f84\uff1a</p><pre class="hljs language-$1"><code>@icon-url: "./assets/iconfont";</code></pre><h2 id="\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230-ng-zorro-antd/src/*.less-\u6837\u5f0f\uff1f">\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f<a onclick="window.location.hash = \'\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230-ng-zorro-antd/src/*.less-\u6837\u5f0f\uff1f\'" class="anchor">#</a></h2><p>\u4e24\u79cd\u60c5\u51b5\uff1a</p><ul><li><p>\u4f7f\u7528 <code>cnpm</code> \u5b89\u88c5\u4f9d\u8d56\u5305\uff0c\u4f1a\u9047\u5230\u65e0\u6cd5\u627e\u5230\u6837\u5f0f\u6587\u4ef6\u3002\u8fd9\u662f\u7531\u4e8e <code>cnpm</code> \u91c7\u7528\u7684\u662f\u8f6f\u94fe\u63a5\u8def\u5f84\u5f62\u5f0f\uff0c\u5bfc\u81f4 <code>ng-zorro-antd</code> \u6587\u4ef6\u5939\u540d\u6709\u6240\u53d8\u52a8\uff0c\u56e0\u6b64\u5efa\u8bae\u6539\u7528 <code>npm</code> \u5b89\u88c5\u4f9d\u8d56\u5305\u3002</p></li><li><p><code>ng-zorro-antd</code> \u7248\u672c\u8fc7\u65e7\u5bfc\u81f4\u90e8\u5206\u7ec4\u4ef6\u65e0\u6cd5\u52a0\u8f7d\u5230\u76f8\u5e94\u6837\u5f0f</p></li></ul><h2 id="\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f">\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f\'" class="anchor">#</a></h2><p><strong>yarn</strong></p><pre class="hljs language-bash"><code>yarn config set registry https://registry.npm.taobao.org\nyarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass</code></pre><p><strong>npm</strong></p><pre class="hljs language-bash"><code>npm config set registry https://registry.npm.taobao.org\nnpm config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass</code></pre><p><strong>\u6ce8\u610f\uff1a</strong> \u6dd8\u5b9d\u6e90\u53ef\u80fd\u4f1a\u51fa\u73b0\u5ef6\u8fdf\u540c\u6b65\u6700\u65b0\u7248\u672c\u7684\u95ee\u9898\uff0c\u8fd9\u79cd\u60c5\u51b5\u5df2\u7ecf\u53d1\u751f\u5f88\u591a\u6b21\uff0c\u53ef\u4ee5\u8bbf\u95ee <a target="_blank" href="https://npm.taobao.org/package/@delon/theme" data-url="https://npm.taobao.org/package/@delon/theme">https://npm.taobao.org/package/@delon/theme</a> \uff08\u5176\u4ed6 <code>@delon</code> \u5305\u540d\u89c1<a href="https://ng-alain.com/docs/architecture#%E7%89%88%E6%9C%AC%E4%BF%A1%E6%81%AF" data-url="https://ng-alain.com/docs/architecture#%E7%89%88%E6%9C%AC%E4%BF%A1%E6%81%AF">\u4f53\u7cfb\u7ed3\u6784</a>\uff09\u67e5\u770b\u5176\u6dd8\u5b9d\u5bf9\u5e94\u7684\u7248\u672c\u53f7\u662f\u5426\u4e0e Npm \u4e00\u6837\uff0c\u82e5\u4e0d\u540c\u53ef\u70b9\u51fb \u3010SYNC\u3011 \u624b\u52a8\u540c\u6b65\u5e76\u91cd\u8bd5\u5b89\u88c5\u4f9d\u8d56\u5305\u3002</p></article>',meta:{order:20,title:{"en-US":"FAQ","zh-CN":"\u5e38\u89c1\u95ee\u9898"},type:"Other"},toc:[{href:"#\u5982\u4f55\u8986\u76d6-@delon/*-\u7684\u914d\u7f6e",title:"\u5982\u4f55\u8986\u76d6 @delon/* \u7684\u914d\u7f6e",h:2},{href:"#\u5982\u4f55\u672c\u5730\u90e8\u7f72-antd-\u56fe\u6807\uff1f",title:"\u5982\u4f55\u672c\u5730\u90e8\u7f72 antd \u56fe\u6807\uff1f",h:2},{href:"#\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230-ng-zorro-antd/src/*.less-\u6837\u5f0f\uff1f",title:"\u4e3a\u4ec0\u4e48\u627e\u4e0d\u5230 ng-zorro-antd/src/*.less \u6837\u5f0f\uff1f",h:2},{href:"#\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",title:"\u5982\u4f55\u6b63\u786e\u4f7f\u7528\u6dd8\u5b9d\u6e90\uff1f",h:2}]}},demo:!1},this.codes=[]},b=function(){this.item={cols:1,urls:{"zh-CN":"docs/getting-started.md"},content:{"zh-CN":{content:'<article><h2 id="\u4e00\u3001\u5199\u5728\u524d\u9762">\u4e00\u3001\u5199\u5728\u524d\u9762<a onclick="window.location.hash = \'\u4e00\u3001\u5199\u5728\u524d\u9762\'" class="anchor">#</a></h2><p>ng-alain \u662f\u4e00\u4e2a\u4f01\u4e1a\u7ea7\u4e2d\u540e\u53f0\u524d\u7aef/\u8bbe\u8ba1\u89e3\u51b3\u65b9\u6848\u811a\u624b\u67b6\uff0c\u76ee\u6807\u4e5f\u975e\u5e38\u7b80\u5355\uff0c\u5e0c\u671b\u5728Angular\u4e0a\u9762\u5f00\u53d1\u4f01\u4e1a\u540e\u53f0\u66f4\u7b80\u5355\u3001\u66f4\u5feb\u901f\u3002\u968f\u7740\u300e\u8bbe\u8ba1\u8005\u300f\u7684\u4e0d\u65ad\u53cd\u9988\uff0c\u5c06\u6301\u7eed\u8fed\u4ee3\uff0c\u9010\u6b65\u6c89\u6dc0\u548c\u603b\u7ed3\u51fa\u66f4\u591a\u8bbe\u8ba1\u6a21\u5f0f\u548c\u76f8\u5e94\u7684\u4ee3\u7801\u5b9e\u73b0\uff0c\u9610\u8ff0\u4e2d\u540e\u53f0\u4ea7\u54c1\u6a21\u677f/\u7ec4\u4ef6/\u4e1a\u52a1\u573a\u666f\u7684\u6700\u4f73\u5b9e\u8df5\uff0c\u4e5f\u5341\u5206\u671f\u5f85\u4f60\u7684\u53c2\u4e0e\u548c\u5171\u5efa\u3002</p><p><strong>\u5982\u4f55\u9605\u8bfb\u6587\u6863</strong></p><p>\u5728\u5f00\u59cb\u4e4b\u524d\u6709\u4e00\u4e9b\u6587\u6863\u63cf\u8ff0\u7ea6\u5b9a\u8bf4\u660e\uff0c\u8fd9\u6709\u52a9\u4e8e\u66f4\u597d\u7684\u9605\u8bfb\uff1a</p><ul><li><p>API\u76f8\u5173</p><ul><li><p><code>[]</code> \u8868\u793a\u5c5e\u6027</p></li><li><p><code>()</code> \u8868\u793a\u4e8b\u4ef6</p></li><li><p><code>[()]</code> \u8868\u793a\u53cc\u5411\u7ed1\u5b9a</p></li><li><p><code>ng-content</code> \u8868\u793a\u7ec4\u4ef6\u5185\u5bb9\u5360\u4f4d\u7b26</p></li><li><p><code>#tpl</code> \u5f00\u5934\u8868\u793a <code><ng-template #tpl></code></p></li></ul></li><li><p>\u5bf9\u8c61\u76f8\u5173\uff0c\u4e00\u822c\u5728\u7c7b\u63cf\u8ff0\u65f6</p><ul><li><p><code>[]</code> \u8868\u793a\u5c5e\u6027</p></li><li><p><code>()</code> \u7ed3\u5c3e\u8868\u793a\u65b9\u6cd5</p></li></ul></li></ul><h2 id="\u4e8c\u3001\u524d\u5e8f\u51c6\u5907">\u4e8c\u3001\u524d\u5e8f\u51c6\u5907<a onclick="window.location.hash = \'\u4e8c\u3001\u524d\u5e8f\u51c6\u5907\'" class="anchor">#</a></h2><p>\u4f60\u7684\u672c\u5730\u73af\u5883\u9700\u8981\u5b89\u88c5 <a target="_blank" href="http://nodejs.org/" data-url="http://nodejs.org/">node</a> \u548c <a target="_blank" href="https://git-scm.com/" data-url="https://git-scm.com/">git</a>\u3002\u6211\u4eec\u7684\u6280\u672f\u6808\u57fa\u4e8e <a target="_blank" href="https://www.tslang.cn/" data-url="https://www.tslang.cn/">Typescript</a>\u3001<a target="_blank" href="https://angular.io/" data-url="https://angular.io/">Angular</a>\u3001<a target="_blank" href="http://g2.alipay.com/" data-url="http://g2.alipay.com/">g2</a>\u3001<a target="_blank" href="https://github.com/cipchk/delon" data-url="https://github.com/cipchk/delon">@delon</a> \u548c <a target="_blank" href="https://ng.ant.design/" data-url="https://ng.ant.design/">ng-zorro-antd</a>\uff0c\u63d0\u524d\u4e86\u89e3\u548c\u5b66\u4e60\u8fd9\u4e9b\u77e5\u8bc6\u4f1a\u975e\u5e38\u6709\u5e2e\u52a9\u3002</p><h2 id="\u4e09\u3001\u5b89\u88c5">\u4e09\u3001\u5b89\u88c5<a onclick="window.location.hash = \'\u4e09\u3001\u5b89\u88c5\'" class="anchor">#</a></h2><pre class="hljs language-bash"><code>ng new demo --style less\ncd demo\nng add ng-alain\nng serve</code></pre><p>\u8bf7\u53c2\u8003<a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a>\u4e86\u89e3\u66f4\u591a\u7ec6\u8282\uff0c\u82e5\u9047\u5230\u95ee\u9898\u8bf7\u9605\u8bfb <a href="/cli/faq" data-url="/cli/faq">\u5e38\u89c1\u95ee\u9898</a>\u3002</p><h2 id="\u56db\u3001\u76ee\u5f55\u7ed3\u6784">\u56db\u3001\u76ee\u5f55\u7ed3\u6784<a onclick="window.location.hash = \'\u56db\u3001\u76ee\u5f55\u7ed3\u6784\'" class="anchor">#</a></h2><p>ng-alain \u662f\u4e00\u4e2a\u6807\u51c6\u7684 Angular CLI \u6784\u5efa\u7684\u9879\u76ee\uff0c\u56e0\u6b64\u4f60\u4f1a\u975e\u5e38\u719f\u6089\u7ed3\u6784\u7684\u7ec4\u6210\u3002\u5728\u6b64\u57fa\u7840\u4e0a\u63d0\u4f9b\u4e86\u5f88\u591a\u5178\u578b\u7684\u6a21\u677f\uff0c\u5229\u7528\u8fd9\u4e9b\u6a21\u677f\u4f60\u53ef\u4ee5\u5feb\u901f\u5730\u6784\u5efa\u4ea7\u54c1\u3002</p><pre class="hljs language-null"><code>\u251c\u2500\u2500 _mock # Mock \u6570\u636e\u89c4\u5219\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core # \u6838\u5fc3\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts # \u9ed8\u8ba4HTTP\u62e6\u622a\u5668\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts # \u521d\u59cb\u5316\u9879\u76ee\u914d\u7f6e\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts # \u6838\u5fc3\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout # \u901a\u7528\u5e03\u5c40\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 ** # \u4e1a\u52a1\u76ee\u5f55\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts # \u4e1a\u52a1\u8def\u7531\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts # \u4e1a\u52a1\u8def\u7531\u6ce8\u518c\u53e3\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared # \u5171\u4eab\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts # \u5171\u4eab\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts # \u6839\u7ec4\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts # \u6839\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 delon.module.ts # @delon\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets # \u672c\u5730\u9759\u6001\u8d44\u6e90\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments # \u73af\u5883\u53d8\u91cf\u914d\u7f6e\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles # \u6837\u5f0f\u76ee\u5f55\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less # \u6837\u5f0f\u5f15\u5bfc\u5165\u53e3</code></pre><h2 id="\u4e94\u3001\u672c\u5730\u5f00\u53d1">\u4e94\u3001\u672c\u5730\u5f00\u53d1<a onclick="window.location.hash = \'\u4e94\u3001\u672c\u5730\u5f00\u53d1\'" class="anchor">#</a></h2><p>\u5b89\u88c5\u4f9d\u8d56\u3002</p><pre class="hljs language-bash"><code>$ npm install</code></pre><blockquote><p>\u9047\u5230\u95ee\u9898\u8bf7\u9605\u8bfb <a href="/cli/faq" data-url="/cli/faq">\u5e38\u89c1\u95ee\u9898</a></p></blockquote><p>\u5982\u679c\u7f51\u7edc\u72b6\u51b5\u4e0d\u4f73\uff0c\u53ef\u4ee5\u4f7f\u7528 <a target="_blank" href="https://www.npmjs.com/package/nrm" data-url="https://www.npmjs.com/package/nrm">nrm</a> \u5e76\u5207\u6362\u56fd\u5185NPM\u955c\u50cf\u8fdb\u884c\u52a0\u901f\u3002</p><pre class="hljs language-bash"><code>$ npm start</code></pre><p>\u542f\u52a8\u5b8c\u6210\u540e\u4f1a\u6253\u5f00\u6d4f\u89c8\u5668\u8bbf\u95ee <a target="_blank" href="//localhost:4200" data-url="//localhost:4200">//localhost:4200</a>\uff0c\u82e5\u4f60\u770b\u5230\u5982\u4e0b\u9875\u9762\u5219\u4ee3\u8868\u6210\u529f\u4e86\u3002</p><p><img width=700 src="./assets/screenshot/desktop.png" /></p></article>',meta:{order:0,title:{"en-US":"Getting Started","zh-CN":"\u5f00\u59cb\u4f7f\u7528"},type:"Basic"},toc:[{href:"#\u4e00\u3001\u5199\u5728\u524d\u9762",title:"\u4e00\u3001\u5199\u5728\u524d\u9762",h:2},{href:"#\u4e8c\u3001\u524d\u5e8f\u51c6\u5907",title:"\u4e8c\u3001\u524d\u5e8f\u51c6\u5907",h:2},{href:"#\u4e09\u3001\u5b89\u88c5",title:"\u4e09\u3001\u5b89\u88c5",h:2},{href:"#\u56db\u3001\u76ee\u5f55\u7ed3\u6784",title:"\u56db\u3001\u76ee\u5f55\u7ed3\u6784",h:2},{href:"#\u4e94\u3001\u672c\u5730\u5f00\u53d1",title:"\u4e94\u3001\u672c\u5730\u5f00\u53d1",h:2}]}},demo:!1},this.codes=[]},k=function(){this.item={cols:1,urls:{"zh-CN":"docs/graph.md"},content:{"zh-CN":{content:'<article><p>\u56fe\u8868\u662f\u57fa\u4e8e G2 (3.0) \u7684\u57fa\u7840\u4e0a\u4e8c\u6b21\u5c01\u88c5\uff0c\u63d0\u4f9b\u4e86\u4e1a\u52a1\u4e2d\u5e38\u7528\u7684\u56fe\u8868\u5957\u4ef6\uff0c\u53ef\u4ee5\u5355\u72ec\u4f7f\u7528\uff0c\u4e5f\u53ef\u4ee5\u7ec4\u5408\u8d77\u6765\u5b9e\u73b0\u590d\u6742\u7684\u5c55\u793a\u6548\u679c\u3002</p><blockquote><p>\u56fe\u8868\u7684\u4f5c\u7528\uff0c\u662f\u5e2e\u52a9\u6211\u4eec\u66f4\u597d\u5730\u770b\u61c2\u6570\u636e\u3002\u9009\u62e9\u4ec0\u4e48\u56fe\u8868\uff0c\u9700\u8981\u56de\u7b54\u7684\u9996\u8981\u95ee\u9898\u662f\u300e\u6211\u6709\u4ec0\u4e48\u6570\u636e\uff0c\u9700\u8981\u7528\u56fe\u8868\u505a\u4ec0\u4e48\u300f\uff0c\u800c\u4e0d\u662f \u300e\u56fe\u8868\u957f\u6210\u4ec0\u4e48\u6837\u300f \u3002</p></blockquote><table><thead><tr><th>\u5206\u7c7b\u540d</th><th>\u7ec4\u4ef6\u6e05\u5355</th><th>\u63cf\u8ff0</th></tr></thead><tbody><tr><td>\u6bd4\u8f83\u7c7b</td><td>\u8ff7\u4f60\u67f1\u72b6\u56fe\uff1a<code>mini-bar</code><br>\u67f1\u72b6\u56fe\uff1a<code>bar</code><br>\u96f7\u8fbe\u56fe\uff1a<code>radar</code><br>\u8ff7\u4f60\u533a\u57df\u56fe\uff1a<code>mini-area</code><br>\u8ff7\u4f60\u8fdb\u5ea6\u6761\uff1a<code>mini-progress</code></td><td>-</td></tr><tr><td>\u5206\u5e03\u7c7b</td><td>\u6298\u7ebf\u56fe\uff1a<code>timeline</code></td><td>-</td></tr><tr><td>\u6d41\u7a0b\u7c7b</td><td>-</td><td>-</td></tr><tr><td>\u5360\u6bd4\u7c7b</td><td>\u997c\u56fe\uff1a<code>pie</code><br>\u6c34\u6ce2\u56fe\uff1a<code>water-wave</code><br>\u8ff7\u4f60\u8fdb\u5ea6\u6761\uff1a<code>mini-progress</code><br>\u8ff7\u4f60\u533a\u57df\u56fe\uff1a<code>mini-area</code></td><td>-</td></tr><tr><td>\u533a\u95f4\u7c7b</td><td>\u4eea\u8868\u76d8\uff1a<code>gauge</code><br>\u8ff7\u4f60\u533a\u57df\u56fe\uff1a<code>mini-area</code></td><td>-</td></tr><tr><td>\u5173\u7cfb\u7c7b</td><td>-</td><td>-</td></tr><tr><td>\u8d8b\u52bf\u7c7b</td><td>\u6298\u7ebf\u56fe\uff1a<code>timeline</code><br>\u8ff7\u4f60\u533a\u57df\u56fe\uff1a<code>mini-area</code></td><td>-</td></tr><tr><td>\u65f6\u95f4\u7c7b</td><td>\u6298\u7ebf\u56fe\uff1a<code>timeline</code><br>\u8ff7\u4f60\u533a\u57df\u56fe\uff1a<code>mini-area</code></td><td>-</td></tr><tr><td>\u5730\u56fe\u7c7b</td><td>-</td><td>-</td></tr><tr><td>\u5176\u5b83</td><td>\u6807\u7b7e\u4e91\uff1a<code>tag-cloud</code><br>\u56fe\u8868\u5361\u7247\uff1a<code>chart-card</code><br>\u81ea\u5b9a\u4e49\u56fe\u8868\uff1a<code>chart</code></td><td>-</td></tr></tbody></table><p><a href="/components/charts" data-url="/components/charts">\u67e5\u770b\u56fe\u8868\u7ec4\u4ef6API\u6587\u6863</a></p><h2 id="\u5982\u4f55\u4f7f\u7528\uff1f">\u5982\u4f55\u4f7f\u7528\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u4f7f\u7528\uff1f\'" class="anchor">#</a></h2><blockquote><p>\u5982\u679c\u4e0a\u9762\u7ec4\u4ef6\u4e0d\u80fd\u6ee1\u8db3\u4f60\u7684\u4e1a\u52a1\u9700\u6c42\uff0c\u53ef\u4ee5\u76f4\u63a5\u8bd5\u7528 <a target="_blank" href="//antv.alipay.com/zh-cn/g2/3.x/index.html" data-url="//antv.alipay.com/zh-cn/g2/3.x/index.html">G2</a> \u5c01\u88c5\u81ea\u5df1\u7684\u56fe\u8868\u7ec4\u4ef6\u3002</p></blockquote><h3 id="\u5f15\u5165-G2">\u5f15\u5165 G2<a onclick="window.location.hash = \'\u5f15\u5165-G2\'" class="anchor">#</a></h3><p>\u901a\u8fc7 npm \u5b89\u88c5 g2 \u5305</p><pre class="hljs language-null"><code>npm install @antv/g2 @antv/data-set @antv/g2-plugin-slider --save</code></pre><p>\u5728 <code>angular.json</code> \u5f15\u7528G2\u6587\u4ef6</p><pre class="hljs language-json"><code>"scripts": [\n "../node_modules/@antv/g2/dist/g2.min.js",\n "../node_modules/@antv/data-set/dist/data-set.min.js",\n "../node_modules/@antv/g2-plugin-slider/dist/g-2.0.0.min.js"\n]</code></pre><h2 id="\u81ea\u5b9a\u4e49-G2-\u7ec4\u4ef6">\u81ea\u5b9a\u4e49 G2 \u7ec4\u4ef6<a onclick="window.location.hash = \'\u81ea\u5b9a\u4e49-G2-\u7ec4\u4ef6\'" class="anchor">#</a></h2><p><code>@delon/abc</code> \u63d0\u4f9b\u4e86\u4e00\u4e2a\u81ea\u5b9a\u4e49G2\u7ec4\u4ef6\u7684\u5bb9\u5668\uff0c\u53ef\u4ee5\u51cf\u5c11\u4e0d\u5fc5\u8981\u7684\u7ec4\u4ef6\u6e32\u67d3\u8fc7\u7a0b\u4e2d\u6240\u4ea7\u751f\u7684\u5947\u602a\u95ee\u9898\u3002</p><p>\u4e00\u4e2a\u5b8c\u6574\u7684\u793a\u4f8b\u89c1 <a target="_blank" href="https://github.com/cipchk/delon/blob/master/packages/abc/components/charts/demo/chart.md" data-url="https://github.com/cipchk/delon/blob/master/packages/abc/components/charts/demo/chart.md">chart.md</a>\u3002</p><h2 id="\u4e3a\u4ec0\u4e48\u4f1a\u6709-kcart.alipay.com-\u8bf7\u6c42\uff1f">\u4e3a\u4ec0\u4e48\u4f1a\u6709 <code>kcart.alipay.com</code> \u8bf7\u6c42\uff1f<a onclick="window.location.hash = \'\u4e3a\u4ec0\u4e48\u4f1a\u6709-kcart.alipay.com-\u8bf7\u6c42\uff1f\'" class="anchor">#</a></h2><p>\u4e3a\u4e86\u66f4\u597d\u670d\u52a1\u7528\u6237\uff0cG2 \u4f1a\u5c06 URL \u548c\u7248\u672c\u4fe1\u606f\u53d1\u9001\u56de AntV \u670d\u52a1\u5668\u3002\u4f60\u53ef\u4ee5\u901a\u8fc7\u4ee5\u4e0b\u4ee3\u7801\u5173\u95ed\uff1a</p><pre class="hljs language-$1"><code>// app.components\nexport class AppComponent {\n constructor() {\n if (typeof G2 !== \'undefined\') G2.track(false);\n }\n}</code></pre></article>',meta:{order:20,title:{"en-US":"Charts","zh-CN":"\u56fe\u8868"},type:"Advance"},toc:[{href:"#\u5982\u4f55\u4f7f\u7528\uff1f",title:"\u5982\u4f55\u4f7f\u7528\uff1f",h:2},{href:"#\u5f15\u5165-G2",title:"\u5f15\u5165 G2",h:3},{href:"#\u81ea\u5b9a\u4e49-G2-\u7ec4\u4ef6",title:"\u81ea\u5b9a\u4e49 G2 \u7ec4\u4ef6",h:2},{href:"#\u4e3a\u4ec0\u4e48\u4f1a\u6709-kcart.alipay.com-\u8bf7\u6c42\uff1f",title:"\u4e3a\u4ec0\u4e48\u4f1a\u6709 kcart.alipay.com \u8bf7\u6c42\uff1f",h:2}]}},demo:!1},this.codes=[]},f=function(){this.item={cols:1,urls:{"zh-CN":"docs/how-to-start.md"},content:{"zh-CN":{content:'<article><h2 id="\u4e00\u3001\u524d\u5e8f\u51c6\u5907">\u4e00\u3001\u524d\u5e8f\u51c6\u5907<a onclick="window.location.hash = \'\u4e00\u3001\u524d\u5e8f\u51c6\u5907\'" class="anchor">#</a></h2><p>\u5f53\u4f60\u5f00\u59cb\u7740\u624b\u5728 ng-alain \u57fa\u7840\u4e0a\u8fdb\u884c\u4e1a\u52a1\u5f00\u53d1\u65f6\uff0c\u6211\u5efa\u8bae\u4f60\u5148\u4e86\u89e3\u4e00\u4e0b\u4ee5\u4e0b\u6587\u6863\uff0c\u8fd9\u5bf9\u4e8e\u56e2\u961f\u4e2d\u6bcf\u4e2a\u6210\u5458\u90fd\u975e\u5e38\u6709\u5e2e\u52a9\u3002</p><ul><li><p><a target="_blank" href="//ant.design/docs/spec/introduce-cn" data-url="//ant.design/docs/spec/introduce-cn">Ant Desig \u6307\u5f15\u6587\u7ae0</a></p></li><li><p><a target="_blank" href="//ng.ant.design/" data-url="//ng.ant.design/">Ant Deisng for Angular</a></p></li><li><p><a target="_blank" href="//antv.alipay.com/zh-cn/index.html" data-url="//antv.alipay.com/zh-cn/index.html">Antv \u56fe\u8868</a></p></li></ul><p>ng-alain \u7684\u57fa\u7840\u7ec4\u4ef6\u5e93\u6765\u81ea ng-zorro-antd\uff0c\u56e0\u6b64\u5bf9\u4e8e\u8fd9\u7c7b\u7ec4\u4ef6\u7684\u4f7f\u7528\u65b9\u5f0f\u4f60\u53ef\u4ee5\u901a\u8fc7\u5176\u5b98\u7f51\u5f97\u5230\u5f88\u8be6\u7ec6\u7684 <a target="_blank" href="//ng.ant.design/" data-url="//ng.ant.design/">API</a> \u6587\u6863\u8bf4\u660e\uff0c\u800c\u5bf9\u4e8e ng-alain \u63d0\u4f9b\u7684\u7ec4\u4ef6\u5219\u901a\u8fc7<a href="/components" data-url="/components">\u7ec4\u4ef6\u9875</a>\u83b7\u53d6\u3002</p><h2 id="\u4e8c\u3001\u542f\u52a8">\u4e8c\u3001\u542f\u52a8<a onclick="window.location.hash = \'\u4e8c\u3001\u542f\u52a8\'" class="anchor">#</a></h2><p>\u9879\u76ee\u4ece\u542f\u52a8\u5f00\u59cb\u5c31\u9700\u8981\u4ece\u8fdc\u7a0b\u83b7\u53d6\u5230\u4e00\u4e9b\u914d\u7f6e\u4fe1\u606f\uff08\u4f8b\u5982\uff1a\u83dc\u5355\u6570\u636e\u3001\u7528\u6237\u6570\u636e\u7b49\uff09\uff0c\u811a\u624b\u67b6\u7684\u542f\u52a8\u59cb\u4e8e <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/core/startup/startup.service.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/core/startup/startup.service.ts">startup.service.ts</a>\uff1b\u5b83\u8fd4\u56de\u7684\u662f\u4e00\u4e2a <code>Promise</code> \u5bf9\u8c61\uff0c\u56e0\u6b64\u4f60\u53ef\u4ee5\u5728\u8fd9\u4e2a\u65b9\u6cd5\u4f53\u5185\u505a\u4f60\u60f3\u505a\u7684\u4e8b\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u505a\u4e86\u5f88\u591a\u6709\u610f\u601d\u7684\u4e8b\uff1a</p><pre class="hljs language-$1"><code>// \u5e94\u7528\u4fe1\u606f\uff1a\u5305\u62ec\u7ad9\u70b9\u540d\u3001\u63cf\u8ff0\u3001\u5e74\u4efd\nthis.settingService.setApp(res.app);\n// \u7528\u6237\u4fe1\u606f\uff1a\u5305\u62ec\u59d3\u540d\u3001\u5934\u50cf\u3001\u90ae\u7bb1\u5730\u5740\nthis.settingService.setUser(res.user);\n// \u521d\u59cb\u5316\u83dc\u5355\nthis.menuService.add(res.menu);\n// \u8bbe\u7f6e\u9875\u9762\u6807\u9898\u7684\u540e\u7f00\nthis.titleService.suffix = res.app.name;\n// i18n\uff1a\u8bbe\u7f6e\u9ed8\u8ba4\u8bed\u8a00\nthis.tr.use(this.settingService.layout.lang);\n// ACL\uff1a\u8bbe\u7f6e\u6743\u9650\u4e3a\u5168\u91cf\nthis.aclService.setFull(true);</code></pre><p>\u4ee5\u4e0a\u8fd9\u4e9b\u662f\u4e2d\u53f0\u4e00\u4e9b\u5fc5\u5907\u6570\u636e\uff0c\u6709\u5173\u4efb\u4f55\u5e94\u7528\u542f\u52a8\u524d\u4e00\u4e9b\u5fc5\u8981\u6570\u636e\u5efa\u8bae\u90fd\u5728\u8fd9\u91cc\u83b7\u53d6\u3002</p><h3 id="\u5e94\u7528\u4fe1\u606f">\u5e94\u7528\u4fe1\u606f<a onclick="window.location.hash = \'\u5e94\u7528\u4fe1\u606f\'" class="anchor">#</a></h3><p>\u7528\u4e8e\u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\uff0c\u5176\u5305\u62ec\u5e94\u7528\u57fa\u672c\u4fe1\u606f\u3001\u5e03\u5c40\u4fe1\u606f\u3001\u7528\u6237\u4fe1\u606f\u3002\u8fd9\u4e9b\u4fe1\u606f\u5e76\u6ca1\u6709\u4efb\u4f55\u529f\u80fd\u6027\uff0c\u53ea\u662f\u5355\u7eaf\u65b9\u4fbf\u4e8e\u9875\u9762\u6e32\u67d3\u3002\u4e3a\u4e86\u66f4\u597d\u7684\u7ba1\u7406\u8fd9\u7c7b\u901a\u7528\u4fe1\u606f\uff0c\u5efa\u8bae\u4f9d\u7136\u4fdd\u6301\u8fd9\u79cd\u89c4\u5219\uff0c\u5e76\u5728\u542f\u52a8\u524d\u7ed9\u4e88\u76f8\u5e94\u5408\u7406\u7684\u503c\u3002</p><p>\u5e03\u5c40\u4fe1\u606f\u4f1a\u4f9d\u5e03\u5c40\u7ed3\u6784\u7684\u53d8\u5316\u81ea\u52a8\u66f4\u65b0\uff0c\u4f8b\u5982\uff1a\u6536\u7f29\u4fa7\u8fb9\u680f\u5176\u503c <code>collapsed</code> \u4f1a\u81ea\u52a8\u66f4\u65b0\u3002</p><h3 id="\u83dc\u5355\u6570\u636e">\u83dc\u5355\u6570\u636e<a onclick="window.location.hash = \'\u83dc\u5355\u6570\u636e\'" class="anchor">#</a></h3><p>\u4e2d\u53f0\u7684\u83dc\u5355\u6570\u636e\u5927\u591a\u6570\u662f\u6765\u81ea\u540e\u7aef\uff0c\u4f46\u7ed9\u4e88\u7684\u6570\u636e\u52a1\u5fc5\u786e\u4fdd\u662f <a target="_blank" href="https://github.com/cipchk/delon/blob/master/packages/theme/src/services/menu/interface.ts" data-url="https://github.com/cipchk/delon/blob/master/packages/theme/src/services/menu/interface.ts">Menu</a> \u683c\u5f0f\uff0c\u6709\u5173\u66f4\u591a\u7ec6\u8282\u8bf7\u53c2\u8003<a href="/components/sidebar-nav" data-url="/components/sidebar-nav">sidebar-nav</a> \u7684API\u8bf4\u660e\u3002</p><h3 id="\u9875\u9762\u6807\u9898">\u9875\u9762\u6807\u9898<a onclick="window.location.hash = \'\u9875\u9762\u6807\u9898\'" class="anchor">#</a></h3><p>\u7edf\u4e00\u8bbe\u7f6e\u6807\u9898\u524d\u540e\u7f00\u3002</p><h3 id="\u56fd\u9645\u5316">\u56fd\u9645\u5316<a onclick="window.location.hash = \'\u56fd\u9645\u5316\'" class="anchor">#</a></h3><p>\u5efa\u8bae\u5728\u542f\u52a8\u524d\u4f18\u5148\u52a0\u8f7d\u56fd\u9645\u5316\u6570\u636e\u5305\uff0c\u8fd9\u6837\u53ef\u786e\u4fdd\u9879\u76ee\u542f\u52a8\u540e\u9875\u9762\u6e32\u67d3\u4e3a\u76ee\u6807\u8bed\u8a00\u3002</p><h3 id="ACL">ACL<a onclick="window.location.hash = \'ACL\'" class="anchor">#</a></h3><p>\u5efa\u8bae\u5728\u542f\u52a8\u524d\u52a0\u8f7dACL\u8bbf\u95ee\u63a7\u5236\u6743\u9650\u6570\u636e\uff0c\u6709\u5173\u66f4\u591a\u7ec6\u8282\u53ef\u53c2\u8003 <a href="/acl" data-url="/acl">ACL</a>\u3002</p><p>\u6700\u540e\uff0c\u8c03\u7528 <code>resolve(res)</code> \u544a\u8bc9Angular\u53ef\u4ee5\u8fdb\u884c\u7ec4\u4ef6\u6e32\u67d3\u4e86\u3002</p><h2 id="\u4e09\u3001\u8def\u7531">\u4e09\u3001\u8def\u7531<a onclick="window.location.hash = \'\u4e09\u3001\u8def\u7531\'" class="anchor">#</a></h2><p>\u811a\u624b\u67b6\u9876\u5c42\u8def\u7531\u4ece <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/routes/routes-routing.module.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/routes/routes-routing.module.ts">routes-routing.module.ts</a> \u5f00\u59cb\uff0c\u5176\u7ed3\u6784\u5982\u4e0b\uff1a</p><pre class="hljs language-$1"><code>const routes: Routes = [\n {\n path: \'\',\n component: LayoutDefaultComponent,\n children: [\n { path: \'\', redirectTo: \'dashboard\', pathMatch: \'full\' },\n { path: \'dashboard\', component: DashboardComponent, data: { title: \'\u4eea\u8868\u76d8\' } },\n // \u4e1a\u52a1\u5b50\u6a21\u5757\n // { path: \'trade\', loadChildren: \'./trade/trade.module#TradeModule\' }\n ]\n },\n // \u5168\u5c4f\u5e03\u5c40\n {\n path: \'fullscreen\',\n component: LayoutFullScreenComponent,\n children: [\n ]\n },\n // passport\n {\n path: \'passport\',\n component: LayoutPassportComponent,\n children: [\n { path: \'login\', component: UserLoginComponent },\n { path: \'register\', component: UserRegisterComponent },\n { path: \'register-result\', component: UserRegisterResultComponent }\n ]\n },\n // \u5355\u9875\u4e0d\u5305\u88f9Layout\n { path: \'callback/:type\', component: CallbackComponent },\n { path: \'403\', component: Exception403Component },\n { path: \'404\', component: Exception404Component },\n { path: \'500\', component: Exception500Component },\n { path: \'**\', redirectTo: \'dashboard\' }\n];</code></pre><p>\u4e0a\u8ff0\u6211\u4eec\u5728\u4e1a\u52a1\u6a21\u5757\u4e2d\u4f7f\u7528\u4e86 <code>LayoutDefaultComponent</code> \u57fa\u7840\u5e03\u5c40\u3001\u7528\u6237\u6388\u6743\u4f7f\u7528\u4e86 <code>LayoutPassportComponent</code> \u7528\u6237\u6388\u6743\u5e03\u5c40\u4ee5\u53ca\u5168\u5c4f\u5e03\u5c40\u3002</p><p>\u5efa\u8bae\u6240\u6709\u5b50\u6a21\u5757\u90fd\u4f7f\u7528\u61d2\u6a21\u5757\u52a0\u8f7d\uff0c\u4f8b\u5982 <code>TradeModule</code> \u8ba2\u5355\u6a21\u5757\uff0c\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u66f4\u6709\u6548\u5730\u7ec4\u7ec7\u4ee3\u7801\u7ed3\u6784\u3002</p><h3 id="\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f">\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f<a onclick="window.location.hash = \'\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f\'" class="anchor">#</a></h3><p>Angular \u542f\u52a8\u662f\u4ece\u9876\u5c42\u7ec4\u4ef6\u5f00\u59cb\u5411\u4e0b\u6e32\u67d3\uff0c\u5f53\u9047\u5230\u61d2\u6a21\u5757\u65f6\u4f1a\u5148\u53d1\u8d77\u811a\u672c\u8bf7\u6c42\uff0c\u6b64\u65f6\u4f1a\u56e0\u4e3a\u7f51\u7edc\u8bf7\u6c42\u5bfc\u81f4\u4eea\u8868\u76d8\u6216\u767b\u5f55\u9875\u77ed\u6682\u7684\u7a7a\u767d\uff0c\u8fd9\u5bf9\u4f53\u9a8c\u5e76\u4e0d\u597d\u3002</p><h3 id="\u8def\u7531\u6743\u9650\u63a7\u5236">\u8def\u7531\u6743\u9650\u63a7\u5236<a onclick="window.location.hash = \'\u8def\u7531\u6743\u9650\u63a7\u5236\'" class="anchor">#</a></h3><p>\u8def\u7531URL\u53ef\u80fd\u4f1a\u53d7\u6d4f\u89c8\u5668\u81ea\u8eab\u5386\u53f2\u8bb0\u5fc6\u7684\u539f\u56e0\uff0c\u5bfc\u81f4\u7528\u6237\u53ef\u80fd\u4f1a\u8bbf\u95ee\u81f3\u65e0\u6743\u9650\u8def\u7531\u65f6\uff0c\u82e5\u4f60\u5e0c\u671b\u6709\u66f4\u597d\u7684\u4f53\u9a8c\uff0c\u5219\u9700\u8981\u5728\u8def\u7531\u4e0a\u914d\u7f6e <code>canActivate</code> \u9009\u9879\uff0c\u5f53\u7528\u6237\u65e0\u6743\u9650\u65f6\u4f1a\u81ea\u52a8\u8df3\u8f6c\u81f3\u76f8\u5173\u9875\uff1b\u6709\u5173\u7ec6\u8282\u89c1<a href="/acl/guard" data-url="/acl/guard">ACL\u8def\u7531\u5b88\u536b</a>\u7ae0\u8282\u3002</p></article>',meta:{order:1,title:{"en-US":"How to start","zh-CN":"\u5982\u4f55\u5f00\u59cb"},type:"Dev"},toc:[{href:"#\u4e00\u3001\u524d\u5e8f\u51c6\u5907",title:"\u4e00\u3001\u524d\u5e8f\u51c6\u5907",h:2},{href:"#\u4e8c\u3001\u542f\u52a8",title:"\u4e8c\u3001\u542f\u52a8",h:2},{href:"#\u5e94\u7528\u4fe1\u606f",title:"\u5e94\u7528\u4fe1\u606f",h:3},{href:"#\u83dc\u5355\u6570\u636e",title:"\u83dc\u5355\u6570\u636e",h:3},{href:"#\u9875\u9762\u6807\u9898",title:"\u9875\u9762\u6807\u9898",h:3},{href:"#\u56fd\u9645\u5316",title:"\u56fd\u9645\u5316",h:3},{href:"#ACL",title:"ACL",h:3},{href:"#\u4e09\u3001\u8def\u7531",title:"\u4e09\u3001\u8def\u7531",h:2},{href:"#\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f",title:"\u4ec0\u4e48\u60c5\u51b5\u4e0b\u4e0d\u4f7f\u7528\u61d2\u52a0\u8f7d\uff1f",h:3},{href:"#\u8def\u7531\u6743\u9650\u63a7\u5236",title:"\u8def\u7531\u6743\u9650\u63a7\u5236",h:3}]}},demo:!1},this.codes=[]},w=function(){this.item={cols:1,urls:{"zh-CN":"docs/i18n.md"},content:{"zh-CN":{content:'<article><p>ng-alain \u9ed8\u8ba4\u57fa\u4e8e <code>@ngx-translate/core</code> \u5b9e\u73b0\u7684\u56fd\u9645\u5316\u8fd9\u4e00\u90e8\u5206\u3002\u6709\u5173\u66f4\u591a\u7ec6\u8282\u8bf7\u81f3\u5176\u5b98\u7f51\u4e86\u89e3\u66f4\u591a\u4fe1\u606f\u3002</p><h2 id="\u5982\u4f55\u8fd0\u884c\uff1f">\u5982\u4f55\u8fd0\u884c\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u8fd0\u884c\uff1f\'" class="anchor">#</a></h2><p>\u53ef\u80fd\u672a\u6765 <code>@delon/*</code> \u5185\u90e8\u4e5f\u9700\u8981 i18n \u7684\u652f\u6301\uff0c\u6240\u4ee5\u5f53\u4e0b <code>@delon/theme</code> \u5185\u90e8\u63d0\u4f9b\u4e86\u4e00\u4e2a <code>AlainI18NService</code> \u7684\u63a5\u53e3\uff0c\u56e0\u6b64\u5f53\u4f60\u9700\u8981\u56fd\u9645\u5316\u9879\u76ee\u65f6\uff0c\u4f60\u5fc5\u987b\u4e3a <code>@delon/*</code> \u63d0\u4f9b\u8be5\u63a5\u53e3\u7684\u5177\u4f53\u5b9e\u9645\u3002\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5728 <code>src/app/core/i18n</code> \u6709\u4e00\u4e2a\u5177\u4f53\u7684\u5b9e\u4f8b\u3002</p><p>\u6700\u540e\uff0c\u8fd8\u9700\u8981\u544a\u77e5 <code>@delon/theme</code>\uff0c\u56e0\u6b64\u4f60\u8fd8\u9700\u8981\u5728 <code>app.module.ts</code> \u4e2d\u505a\u4e2a\u5b9a\u4e49\uff1a</p><pre class="hljs language-$1"><code>providers: [\n { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false }\n]</code></pre><h2 id="\u5982\u4f55\u5220\u9664\uff1f">\u5982\u4f55\u5220\u9664\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u5220\u9664\uff1f\'" class="anchor">#</a></h2><p><strong>\u901a\u8fc7CLI</strong></p><p>\u53c2\u8003 <a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a>\u3002</p><p><strong>\u901a\u8fc7Github</strong></p><p>\u79fb\u9664\u5185\u5bb9\u5305\u62ec\uff1a</p><ul><li><p><code>src/app/core/i18n</code> \u76ee\u5f55</p></li><li><p><code>app.module.ts</code> \u5bf9 <code>TranslateModule</code> \u76f8\u5173\u58f0\u660e</p></li><li><p>\u66ff\u6362\u6389\u9ed8\u8ba4\u5e03\u5c40\u53ef\u80fd\u51fa\u73b0\u7684I18n\u7684Pipe\u4f7f\u7528 <code>| translate</code></p></li><li><p>\u79fb\u9664 <code>@ngx-translate/core</code>\u3001<code>@ngx-translate/http-loader</code> \u5305\u4f53</p></li></ul></article>',meta:{order:30,title:{"en-US":"I18n","zh-CN":"\u56fd\u9645\u5316"},type:"Advance"},toc:[{href:"#\u5982\u4f55\u8fd0\u884c\uff1f",title:"\u5982\u4f55\u8fd0\u884c\uff1f",h:2},{href:"#\u5982\u4f55\u5220\u9664\uff1f",title:"\u5982\u4f55\u5220\u9664\uff1f",h:2}]}},demo:!1},this.codes=[]},_=function(){this.item={cols:1,urls:{"zh-CN":"docs/import.md"},content:{"zh-CN":{content:'<article><p>\u9664\u4e86 ng-zorro-antd \u57fa\u7840\u7ec4\u4ef6\u4ee5\u53ca\u811a\u624b\u67b6\u5185\u7f6e\u7684 @delon \u4e1a\u52a1\u7ec4\u4ef6\uff0c\u6709\u65f6\u6211\u4eec\u8fd8\u9700\u8981\u5f15\u5165\u5176\u4ed6\u5916\u90e8\u6a21\u5757\uff0c\u8fd9\u91cc\u4ee5\u5f15\u5165\u5bcc\u6587\u672c\u7ec4\u4ef6 <a target="_blank" href="https://github.com/cipchk/ngx-ueditor" data-url="https://github.com/cipchk/ngx-ueditor">ngx-ueditor</a> \u4e3a\u4f8b\u8fdb\u884c\u4ecb\u7ecd\u3002</p><h2 id="\u5f15\u5165\u4f9d\u8d56">\u5f15\u5165\u4f9d\u8d56<a onclick="window.location.hash = \'\u5f15\u5165\u4f9d\u8d56\'" class="anchor">#</a></h2><p>\u5728\u7ec8\u7aef\u8f93\u5165\u4e0b\u9762\u7684\u547d\u4ee4\u5b8c\u6210\u5b89\u88c5\uff1a</p><pre class="hljs language-bash"><code>$ npm install ngx-ueditor --save</code></pre><blockquote><p>\u52a0\u4e0a <code>--save</code> \u53c2\u6570\u4f1a\u81ea\u52a8\u6dfb\u52a0\u4f9d\u8d56\u5230 package.json \u4e2d\u53bb\u3002</p></blockquote><h2 id="\u6ce8\u518c">\u6ce8\u518c<a onclick="window.location.hash = \'\u6ce8\u518c\'" class="anchor">#</a></h2><p>\u50cf\u5bcc\u6587\u672c\u6846\u4f60\u53ef\u80fd\u9700\u8981\u5728\u6240\u6709\u5b50\u6a21\u5757\u4e2d\u90fd\u4f1a\u53ef\u80fd\u4f1a\u7528\u5230\uff0c\u56e0\u4e3a\u5efa\u8bae\u5728 <code>SharedModule</code> \u6a21\u5757\u4e2d\u5bfc\u5165\u548c\u5bfc\u51fa\u4ed6\u3002</p><pre class="hljs language-$1"><code>// shared.module.ts\n// region: third libs\nimport { UEditorModule } from \'ngx-ueditor\';\nconst THIRDMODULES = [ UEditorModule ];\n// endregion</code></pre><blockquote><p><code>region: third libs</code> \u533a\u57df\u662fng-alain\u7684\u4e00\u4e2a\u7f16\u7801\u7ea6\u5b9a\uff0c\u5c06\u6240\u6709\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u6ce8\u518c\u81f3 <code>THIRDMODULES</code> \u53d8\u91cf\u4e2d\u5373\u53ef\uff0c\u800c\u65e0\u987b\u5173\u5fc3 <code>@NgModule</code> \u5185\u5728\u7684\u5199\u6cd5\uff0c\u6709\u5173\u66f4\u591a\u7f16\u7801\u7ea6\u5b9a\u53ef\u4ee5\u53c2\u8003<a href="/docs/style-guide" data-url="/docs/style-guide">\u7f16\u7801\u89c4\u8303\u5efa\u8bae</a>\u3002</p></blockquote><p>\u5bf9\u4e8e\u90e8\u5206\u7b2c\u4e09\u65b9\u7ec4\u4ef6\uff0c\u53ef\u80fd\u4f1a\u9700\u8981\u4e00\u4e9b\u914d\u7f6e\u9879\uff0c\u5efa\u8bae\u5728\u6839\u6a21\u5757\u4e2d\u6ce8\u518c\uff0c\u4f8b\u5982\uff1a</p><pre class="hljs language-$1"><code>import { UEditorModule } from \'ngx-ueditor\';\n@NgModule({\n imports: [\n BrowserModule,\n UEditorModule.forRoot({\n // \u6307\u5b9aueditor.js\u8def\u5f84\u76ee\u5f55\n path: \'assets/ueditor/\',\n // \u9ed8\u8ba4\u5168\u5c40\u914d\u7f6e\u9879\n options: {\n themePath: \'/assets/ueditor/themes/\'\n }\n })\n ]\n})\nexport class AppModule { }</code></pre><h2 id="\u4f7f\u7528">\u4f7f\u7528<a onclick="window.location.hash = \'\u4f7f\u7528\'" class="anchor">#</a></h2><p>\u63a5\u4e0b\u6765\u4f60\u53ef\u4ee5\u5728\u4efb\u4f55\u5b50\u6a21\u5757\u4e2d\u4f7f\u7528 <code>ngx-ueditor</code>\uff1a</p><pre class="hljs language-$1"><code><ueditor [(ngModel)]="html"></ueditor></code></pre></article>',meta:{order:60,title:{"en-US":"Import Module","zh-CN":"\u5f15\u5165\u5916\u90e8\u6a21\u5757"},type:"Dev"},toc:[{href:"#\u5f15\u5165\u4f9d\u8d56",title:"\u5f15\u5165\u4f9d\u8d56",h:2},{href:"#\u6ce8\u518c",title:"\u6ce8\u518c",h:2},{href:"#\u4f7f\u7528",title:"\u4f7f\u7528",h:2}]}},demo:!1},this.codes=[]},v=function(){this.item={cols:1,urls:{"zh-CN":"docs/mock.md"},content:{"zh-CN":{content:'<article><p><a href="/mock" data-url="/mock">Mock \u6587\u6863</a>\u3002</p></article>',meta:{order:60,title:"Mock",type:"Advance"},toc:[]}},demo:!1},this.codes=[]},y=function(){this.item={cols:1,urls:{"zh-CN":"docs/module.md"},content:{"zh-CN":{content:'<article><p>\u4e00\u76f4\u4ee5\u6765 <code>AppModule</code>\u3001<code>CoreModule</code>\u3001<code>SharedModule</code> \u6a21\u5757\u4f7f\u7528\u6ca1\u6709\u5f88\u660e\u786e\u7684\u89c4\u8303\uff0c\u5f88\u5bb9\u6613\u8ba9\u4ea7\u751f\u4e71\u7528\u3002Angular\u6a21\u5757\u76ee\u6807\u662f\u4e3a\u4e86\u4f7f\u7ec4\u4ef6\u3001\u6307\u4ee4\u3001\u670d\u52a1\u548c\u7ba1\u9053\u529f\u80fd\u5757\u66f4\u5185\u805a\uff0c\u5e76\u6bcf\u4e00\u4e2a\u529f\u80fd\u533a\u57df\u5f62\u6210\u72ec\u7acb\u7684\u4e1a\u52a1\u9886\u57df\u6216\u5b9e\u7528\u5de5\u5177\u7684\u96c6\u5408\u3002</p><h2 id="\u5206\u7c7b\u8bf4\u660e">\u5206\u7c7b\u8bf4\u660e<a onclick="window.location.hash = \'\u5206\u7c7b\u8bf4\u660e\'" class="anchor">#</a></h2><h3 id="AppModule">AppModule<a onclick="window.location.hash = \'AppModule\'" class="anchor">#</a></h3><p>\u6839\u6a21\u5757\uff0c\u7528\u4e8e\u5f15\u5bfc Angular \u542f\u52a8\uff1b\u5b83\u975e\u5e38\u9002\u5408\u5bfc\u5165\u4e00\u4e9b\u9700\u8981\u5728\u6574\u4e2a\u5e94\u7528\u5230\u5904\u9700\u8981\u7684\u6a21\u5757\uff0c\u4f8b\u5982\uff1a\u4e3b\u9898\u7cfb\u7edf\u3001\u7528\u6237\u4e3b\u8ba4\u8bc1\u6a21\u5757\u3001\u6743\u9650\u6a21\u5757\u7b49\u6a21\u5757\uff0c\u4ee5\u53ca\u4e00\u4e9b\u5168\u5c40\u6027HTTP\u62e6\u622a\u5668\u3001\u56fd\u9645\u5316\u670d\u52a1\u7b49\u3002</p><h3 id="CoreModule">CoreModule<a onclick="window.location.hash = \'CoreModule\'" class="anchor">#</a></h3><p>\u6838\u5fc3\u6a21\u5757\u53ea\u4f1a\u88ab\u5bfc\u5165\u4e00\u6b21\uff0c\u5b83\u7b49\u540c <code>AppModule</code>\uff0c\u4f46\u6211\u4eec\u66f4\u5e94\u8be5\u628a\u5b83\u5f53\u6210\u4e00\u4e2a<strong>\u7eaf\u670d\u52a1\u7c7b\u6a21\u5757</strong>\uff0c\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\u3002</p><h3 id="SharedModule">SharedModule<a onclick="window.location.hash = \'SharedModule\'" class="anchor">#</a></h3><p>\u6211\u4eec\u53eb\u5b83\u5171\u4eab\u6a21\u5757\uff1b\u5b83\u4e0d\u5e94\u8be5\u51fa\u73b0 <code>providers</code>\uff0c\u56e0\u4e3a <code>ShareModule</code> \u4f1a\u5728\u6240\u6709\u4e1a\u52a1\u6a21\u5757\u4e2d\u88ab\u5bfc\u5165\uff0c\u8fd9\u4f1a\u5bfc\u81f4\u670d\u52a1\u88ab\u8986\u76d6\u3002</p><h2 id="\u5efa\u8bae">\u5efa\u8bae<a onclick="window.location.hash = \'\u5efa\u8bae\'" class="anchor">#</a></h2><h3 id="AppModule">AppModule<a onclick="window.location.hash = \'AppModule\'" class="anchor">#</a></h3><p><strong>\u5e94</strong> \u5bfc\u5165\u6a21\u5757\uff1a</p><ul><li><p>Angular \u6a21\u5757\uff1a<code>BrowserModule</code>\u3001<code>BrowserAnimationsModule</code>\u3001<code>HttpClientModule</code></p></li><li><p><code>AlainThemeModule</code> \u4e3b\u9898\u7cfb\u7edf</p></li><li><p><code>DelonMockModule</code> Mock\u6570\u636e</p></li><li><p><code>AlainAuthModule</code> \u7528\u6237\u8ba4\u8bc1\u6a21\u5757</p></li><li><p><code>AlainACLModule</code> \u6743\u9650\u6a21\u5757</p></li><li><p>\u56fd\u9645\u5316\u6a21\u5757</p></li></ul><p><strong>\u5e94</strong> \u5305\u542b\u670d\u52a1\uff1a</p><ul><li><p>Angular \u56fd\u9645\u5316</p></li><li><p>HTTP \u62e6\u622a\u5668</p></li><li><p>Angular \u542f\u52a8\u670d\u52a1</p></li><li><p><code>ng-zorro-antd</code> \u57fa\u7840\u7ec4\u4ef6\u670d\u52a1</p></li><li><p><code>@delon/abc</code> \u4e1a\u52a1\u7ec4\u4ef6\u670d\u52a1</p></li></ul><p><strong>\u4f5c\u7528\uff1a</strong> \u8d2f\u7a7f\u6574\u4e2a\u5e94\u7528\u7684\u5b9a\u4e49\u3002</p><h3 id="CoreModule">CoreModule<a onclick="window.location.hash = \'CoreModule\'" class="anchor">#</a></h3><p><strong>\u5e94</strong> \u4ec5\u53ea\u7559 <code>providers</code> \u5c5e\u6027\u3002</p><p><strong>\u4f5c\u7528\uff1a</strong> \u4e00\u4e9b\u901a\u7528\u670d\u52a1\uff0c\u4f8b\u5982\uff1a\u7528\u6237\u6d88\u606f\u3001HTTP\u6570\u636e\u8bbf\u95ee\u3002</p><h3 id="ShareModule">ShareModule<a onclick="window.location.hash = \'ShareModule\'" class="anchor">#</a></h3><p><strong>\u5e94</strong> \u5305\u542b\u5b9a\u4e49\uff1a</p><ul><li><p>\u5e94\u7528\u901a\u7528\u81ea\u5b9a\u4e49\u4e1a\u52a1\u7ec4\u4ef6</p></li></ul><p><strong>\u5e94</strong> \u5bfc\u5165\u6a21\u5757\uff1a</p><ul><li><p>Angular \u901a\u7528\u6a21\u5757\uff1a<code>CommonModule</code>\u3001<code>FormsModule</code>\u3001<code>RouterModule</code>\u3001<code>ReactiveFormsModule</code></p></li><li><p><code>ng-zorro-antd</code> \u57fa\u7840\u7ec4\u4ef6\u6a21\u5757</p></li><li><p><code>@delon/abc</code> \u4e1a\u52a1\u7ec4\u4ef6\u6a21\u5757</p></li><li><p>\u7b2c\u4e09\u65b9\u901a\u7528\u4f9d\u8d56\u7ec4\u4ef6\u6a21\u5757</p></li></ul><p><strong>\u5e94</strong> \u5bfc\u51fa\u6240\u6709\u5305\u542b\u7684\u6a21\u5757\u3002</p><p><strong>\u4e0d\u5e94</strong> \u6709 <code>providers</code> \u5c5e\u6027\u3002</p><p><strong>\u4f5c\u7528\uff1a</strong> \u4e00\u4e9b\u901a\u7528\u81ea\u5b9a\u4e49\u3001\u7b2c\u4e09\u65b9\u7ec4\u4ef6\u5b9a\u4e49\uff0c\u51cf\u5c11\u4e1a\u52a1\u6a21\u5757\u7684\u5bfc\u5165\u3002</p><h3 id="\u4e1a\u52a1\u6a21\u5757">\u4e1a\u52a1\u6a21\u5757<a onclick="window.location.hash = \'\u4e1a\u52a1\u6a21\u5757\'" class="anchor">#</a></h3><p>\u4e1a\u52a1\u6a21\u5757\u5e94\u8be5\u5305\u62ec\u4e1a\u52a1\u5b9a\u4e49\u6a21\u5757\u548c\u8def\u7531\u6a21\u5757\u3002</p><p><strong>\u6a21\u5757</strong></p><p><strong>\u5e94</strong> \u5bfc\u5165\u6a21\u5757\uff1a</p><ul><li><p><code>SharedModule</code></p></li><li><p>\u5bf9\u5e94\u7684\u8def\u7531\u6a21\u5757</p></li></ul><p><strong>\u4e0d\u5e94</strong>\uff1a</p><ul><li><p>\u5bfc\u51fa\u4efb\u4f55\u7ec4\u4ef6</p></li><li><p>\u5c3d\u53ef\u80fd\u4e0d\u8981\u4f7f\u7528 <code>providers</code> \u5c5e\u6027</p></li></ul><p><strong>\u8def\u7531\u6a21\u5757</strong></p><p><strong>\u5e94</strong> \u53ea\u5305\u62ec\u8def\u7531\u7684 <code>import</code>\u3001<code>exports</code> \u6a21\u5757\u3002</p></article>',meta:{order:30,title:{"en-US":"Module Guidelines","zh-CN":"\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219"},type:"Other"},toc:[{href:"#\u5206\u7c7b\u8bf4\u660e",title:"\u5206\u7c7b\u8bf4\u660e",h:2},{href:"#AppModule",title:"AppModule",h:3},{href:"#CoreModule",title:"CoreModule",h:3},{href:"#SharedModule",title:"SharedModule",h:3},{href:"#\u5efa\u8bae",title:"\u5efa\u8bae",h:2},{href:"#AppModule",title:"AppModule",h:3},{href:"#CoreModule",title:"CoreModule",h:3},{href:"#ShareModule",title:"ShareModule",h:3},{href:"#\u4e1a\u52a1\u6a21\u5757",title:"\u4e1a\u52a1\u6a21\u5757",h:3}]}},demo:!1},this.codes=[]},x=function(){this.item={cols:1,urls:{"zh-CN":"docs/new-component.md"},content:{"zh-CN":{content:'<article><p>\u5bf9\u4e8e\u4e00\u4e9b\u53ef\u80fd\u88ab\u591a\u5904\u5f15\u7528\u7684\u529f\u80fd\u6a21\u5757\uff0c\u5efa\u8bae\u63d0\u70bc\u6210\u4e1a\u52a1\u7ec4\u4ef6\u7edf\u4e00\u7ba1\u7406\u3002\u8fd9\u4e9b\u7ec4\u4ef6\u4e00\u822c\u6709\u4ee5\u4e0b\u7279\u5f81\uff1a</p><ul><li><p>\u53ea\u8d1f\u8d23\u4e00\u5757\u76f8\u5bf9\u72ec\u7acb\uff0c\u7a33\u5b9a\u7684\u529f\u80fd\uff1b</p></li><li><p>\u6ca1\u6709\u5355\u72ec\u7684\u8def\u7531\u914d\u7f6e\uff1b</p></li><li><p>\u53ef\u80fd\u662f\u7eaf\u9759\u6001\u7684\uff0c\u4ec5\u53d7\u7236\u7ec4\u4ef6\uff08\u901a\u5e38\u662f\u4e00\u4e2a\u9875\u9762\uff09\u4f20\u9012\u7684\u53c2\u6570\u63a7\u5236\u3002</p></li></ul><p>\u4e0b\u9762\u4ee5\u4e00\u4e2a\u7b80\u5355\u7684\u9759\u6001\u7ec4\u4ef6\u4e3a\u4f8b\u8fdb\u884c\u4ecb\u7ecd\u3002\u5047\u8bbe\u4f60\u7684\u5e94\u7528\u4e2d\u7ecf\u5e38\u9700\u8981\u5c55\u73b0\u56fe\u7247\uff0c\u8fd9\u4e9b\u56fe\u7247\u5bbd\u5ea6\u56fa\u5b9a\uff0c\u6709\u4e00\u4e2a\u7070\u8272\u7684\u80cc\u666f\u548c\u4e00\u5b9a\u7684\u5185\u8fb9\u8ddd\uff0c\u6709\u6587\u5b57\u4ecb\u7ecd\uff0c\u5c31\u50cf\u4e0b\u56fe\u8fd9\u6837\uff1a</p><p><img width=400 src="https://gw.alipayobjects.com/zos/rmsportal/vcRltFiKfHBHFrUcsTtW.png" /></p><p>\u4f60\u53ef\u4ee5\u7528\u4e00\u4e2a\u7ec4\u4ef6\u6765\u5b9e\u73b0\u8fd9\u4e00\u529f\u80fd\uff0c\u5b83\u6709\u9ed8\u8ba4\u7684\u6837\u5f0f\uff0c\u540c\u65f6\u53ef\u4ee5\u63a5\u6536\u7236\u7ec4\u4ef6\u4f20\u9012\u7684\u53c2\u6570\u8fdb\u884c\u5c55\u793a\u3002</p><h2 id="\u65b0\u5efa\u6587\u4ef6">\u65b0\u5efa\u6587\u4ef6<a onclick="window.location.hash = \'\u65b0\u5efa\u6587\u4ef6\'" class="anchor">#</a></h2><p>\u5728 <code>src/app/shared/components</code> \u4e0b\u65b0\u5efa\u4e00\u4e2a\u4ee5\u7ec4\u4ef6\u540d\u547d\u540d\u7684\u6587\u4ef6\u5939\uff0c\u547d\u540d\u5c3d\u91cf\u4f53\u73b0\u7ec4\u4ef6\u7684\u529f\u80fd\uff0c\u8fd9\u91cc\u5c31\u53eb <code>image-wrapper</code>\u3002\u5728\u6b64\u6587\u4ef6\u5939\u4e0b\u65b0\u589e ts \u6587\u4ef6\u3001\u6837\u5f0f\u6587\u4ef6\uff08\u5982\u679c\u9700\u8981\uff09\u53ca\u7ec4\u4ef6API\u8bf4\u660e\uff0c\u547d\u540d\u4e3a <code>index.ts</code>\u3001<code>index.less</code>\u548c<code>README.md</code>\u3002</p><blockquote><p>\u5728\u4f7f\u7528\u7ec4\u4ef6\u65f6\uff0c\u9ed8\u8ba4\u4f1a\u5728 <code>index.ts</code> \u4e2d\u5bfb\u627e export \u7684\u5bf9\u8c61\uff0c\u5982\u679c\u4f60\u7684\u7ec4\u4ef6\u6bd4\u8f83\u590d\u6742\uff0c\u53ef\u4ee5\u5206\u4e3a\u591a\u4e2a\u6587\u4ef6\uff0c\u6700\u540e\u5728 <code>index.ts</code> \u4e2d\u7edf\u4e00 export\uff0c\u5c31\u50cf\u8fd9\u6837\uff1a</p><pre class="hljs language-$1"><code>// main.component.ts\nexport class MainComponent {}\n\n// sub.component.ts\nexport class SubComponent {}\n\n// index.ts\nexport MainComponent from \'./main.component\';\nexport SubComponent from \'./sub.component\';</code></pre></blockquote><p>\u4f60\u7684\u4ee3\u7801\u5927\u6982\u662f\u8fd9\u4e2a\u6837\u5b50\uff1a</p><pre class="hljs language-$1"><code>// index.ts\nimport { Component, Input } from \'@angular/core\';\n\n@Component({\n selector: \'image-wrapper\',\n template: `\n <div [ngStyle]="style">\n <img class="img" [src]="src" [alt]="desc" />\n <div *ngIf="desc" class="desc">{{desc}}</div>\n </div>`,\n styleUrls: [ \'./index.less\' ]\n})\nexport class ImageWrapperComponent {\n @Input() style: { [key: string]: string };\n @Input() src: string;\n @Input() desc: string;\n}</code></pre><pre class="hljs language-$1"><code>// index.less\n:host {\n padding: 0 20px 8px;\n background: #f2f4f5;\n width: 400px;\n margin: 0 auto;\n text-align: center;\n\n ::ng-deep {\n .img {\n vertical-align: middle;\n max-width: calc(100% - 32px);\n margin: 2.4em 1em;\n box-shadow: 0 8px 20px rgba(143, 168, 191, 0.35);\n }\n }\n}</code></pre><p>\u5230\u8fd9\u513f\u7ec4\u4ef6\u5c31\u5efa\u597d\u4e86\u3002</p><h2 id="\u6ce8\u518c">\u6ce8\u518c<a onclick="window.location.hash = \'\u6ce8\u518c\'" class="anchor">#</a></h2><p>\u7ec4\u4ef6\u521b\u5efa\u597d\u540e\uff0c\u9700\u8981\u5c06\u7ec4\u4ef6\u5bfc\u5165 <code>SharedModule</code> \u4e2d\uff0c\u8fd9\u6837\u6240\u6709\u5b50\u6a21\u5757\u90fd\u53ef\u4ee5\u4f7f\u7528\u5230\u8be5\u7ec4\u4ef6\u3002</p><pre class="hljs language-$1"><code>// shared.module.ts\n// region: your componets & directives\nimport { ImageWrapperComponent } from \'./image-wrapper\';\nconst COMPONENTS = [\n ImageWrapperComponent\n];\nconst DIRECTIVES = [];\n// endregion</code></pre><h2 id="\u4f7f\u7528">\u4f7f\u7528<a onclick="window.location.hash = \'\u4f7f\u7528\'" class="anchor">#</a></h2><p>\u5728\u8981\u4f7f\u7528\u8fd9\u4e2a\u7ec4\u4ef6\u7684\u5730\u65b9\uff0c\u6309\u7167\u7ec4\u4ef6\u5b9a\u4e49\u7684 API \u4f20\u5165\u53c2\u6570\uff0c\u76f4\u63a5\u4f7f\u7528\u5c31\u597d\uff1a</p><pre class="hljs language-$1"><code><image-wrapper\n src="https://os.alipayobjects.com/rmsportal/mgesTPFxodmIwpi.png"\n desc="\u793a\u610f\u56fe"></image-wrapper></code></pre></article>',meta:{order:20,title:{"en-US":"New Component","zh-CN":"\u65b0\u589e\u4e1a\u52a1\u7ec4\u4ef6"},type:"Dev"},toc:[{href:"#\u65b0\u5efa\u6587\u4ef6",title:"\u65b0\u5efa\u6587\u4ef6",h:2},{href:"#\u6ce8\u518c",title:"\u6ce8\u518c",h:2},{href:"#\u4f7f\u7528",title:"\u4f7f\u7528",h:2}]}},demo:!1},this.codes=[]},C=function(){this.item={cols:1,urls:{"zh-CN":"docs/new-page.md"},content:{"zh-CN":{content:'<article><p>Angular \u867d\u7136\u662f\u4ee5\u7ec4\u4ef6\u6811\u6765\u6e32\u67d3\u4e00\u4e2a\u9875\u9762\uff0c\u7136\u540e\u5b9e\u9645\u5f00\u53d1\u662f\u4ee5\u4e00\u79cd\u6a21\u5757\u6811\u6765\u7ec4\u7ec7\u4ee3\u7801\uff0c\u4f7f\u5176\u80fd\u66f4\u597d\u5730<strong>\u4ee3\u7801\u590d\u7528</strong>\u3002\u800c\u5bf9\u4e8e<strong>\u6a21\u5757\u7c92\u5ea6</strong>\u53d6\u51b3\u4e8e\u9700\u6c42\uff0cng-alain\u7684\u5b9a\u4f4d\u5728\u4e8e\u4e2d\u53f0\u524d\u7aef\uff0c\u56e0\u6b64\uff0c\u6bd4\u8f83\u5efa\u8bae\u4ece\u4e1a\u52a1\u89d2\u5ea6\u51fa\u53d1\u7ec4\u7ec7\u4f60\u7684\u4ee3\u7801\u7ed3\u6784\u3002</p><p>ng-alain \u63d0\u4f9b\u4e00\u5957\u975e\u5e38\u4e30\u5bcc\u7684 Schematics \u6a21\u677f\uff0c\u53ef\u4ee5\u5feb\u901f\u521b\u5efa\u7b26\u5408 ng-alain \u7279\u70b9\u7684\u6a21\u677f\u548c\u9875\u9762\u3002</p><blockquote><p>\u53e6\uff1ang-alain \u662f\u4e00\u4e2a\u6807\u51c6\u7684 Angular CLI \u9879\u76ee\uff0c\u4f60\u4f9d\u7136\u53ef\u4ee5\u5229\u7528\u5b83\u5feb\u901f\u7684\u521b\u5efa\u76f8\u5173\u6587\u4ef6\u3002</p></blockquote><h2 id="\u4e00\u3001\u6a21\u5757">\u4e00\u3001\u6a21\u5757<a onclick="window.location.hash = \'\u4e00\u3001\u6a21\u5757\'" class="anchor">#</a></h2><p>\u8981\u521b\u5efa\u4e00\u4e2a\u9875\u9762\u9700\u8981\u5148\u521b\u5efa\u4e00\u4e2a\u6a21\u5757\u5f00\u59cb\uff0c\u5047\u5982\u9700\u8981\u4e00\u4e2a\u7cfb\u7edf\u8bbe\u7f6e\u76f8\u5173\u7684\u6a21\u5757\uff0c\u6267\u884c\u547d\u4ee4\uff1a</p><pre class="hljs language-bash"><code>ng g ng-alain:module sys</code></pre><p>CLI \u4f1a\u81ea\u52a8\u5728 <code>src/app/routes/sys</code> \u4e0b\u521b\u5efa <code>sys.module.ts</code> \u548c <code>sys-routing.module.ts</code> \u6587\u4ef6\uff0c\u524d\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u7ec4\u4ef6\u5b9a\u4e49\u6587\u4ef6\uff1b\u540e\u8005\u662f\u7cfb\u7edf\u8bbe\u7f6e\u6a21\u5757\u8def\u7531\u914d\u7f6e\u6587\u4ef6\u3002\u5f53\u7136\u4e3a\u4e86\u4f7f\u6a21\u5757\u8ddf\u4e3b\u6a21\u5757\u4ea7\u751f\u8054\u7cfb\uff0c\u8fd8\u9700\u8981\u81f3 <code>src/app/routes/routes-routing.module.ts</code> \u6587\u4ef6\u5185\u6ce8\u518c\u65b0\u5efa\u7684\u4e1a\u52a1\u6a21\u5757\uff1a</p><pre class="hljs language-$1"><code>{\n path: \'\',\n component: LayoutDefaultComponent,\n children: [\n { path: \'sys\', loadChildren: \'./sys/sys.module#SysModule\' }\n ]\n}</code></pre><p>\u8fd9\u6837\uff0c\u4f60\u53ef\u4ee5\u653e\u5fc3\u5728 <code>sys</code> \u76ee\u5f55\u4e2d\u5f00\u59cb\u5f00\u53d1\u50cf\u83dc\u5355\u7ba1\u7406\u3001\u65e5\u5fd7\u3001\u7cfb\u7edf\u914d\u7f6e\u7b49\u4e1a\u52a1\u9875\u9762\u3002</p><h2 id="\u4e8c\u3001\u9875\u9762">\u4e8c\u3001\u9875\u9762<a onclick="window.location.hash = \'\u4e8c\u3001\u9875\u9762\'" class="anchor">#</a></h2><p>\u5229\u7528 <code>ng generate</code> \u547d\u4ee4\u5728 <code>sys</code> \u76ee\u5f55\u4e0b\u521b\u5efa\u4e00\u4e2a\u65e5\u5fd7\u5217\u8868\u9875\uff1a</p><pre class="hljs language-bash"><code>ng g ng-alain:list log -m=sys</code></pre><blockquote><p>\u4e86\u89e3\u66f4\u591a\u8bf7\u53c2\u8003<a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a>\u3002</p></blockquote><p>\u6700\u7ec8\uff0c\u4f60\u53ef\u4ee5\u8bbf\u95ee <a target="_blank" href="//localhost:4200/#/sys/log" data-url="//localhost:4200/#/sys/log">\u65e5\u5fd7</a> \u9875\u9762\u3002</p><p>\u5f53\u7136\u65e5\u5fd7\u53ef\u80fd\u662f\u4e00\u4e2a\u975e\u5e38\u4e30\u5bcc\u7684\u4fe1\u606f\uff0c\u53ef\u4ee5\u589e\u52a0\u4e00\u4e2a\u4ee5\u6a21\u6001\u6846\u6253\u5f00\u7684\u67e5\u770b\u9875\u6765\u663e\u793a\u66f4\u591a\u8be6\u60c5\u3002</p><pre class="hljs language-bash"><code>ng g ng-alain:view view -m=sys -t=log</code></pre><p><code>-t=log</code> \u8868\u793a\u5e0c\u671b\u628a\u521b\u5efa\u7684\u6587\u4ef6\u653e\u8fdb\u81f3 <code>sys/log/view</code> \u4e0b\u9762\u3002</p></article>',meta:{order:10,title:{"en-US":"New Page","zh-CN":"\u65b0\u589e\u9875\u9762"},type:"Dev"},toc:[{href:"#\u4e00\u3001\u6a21\u5757",title:"\u4e00\u3001\u6a21\u5757",h:2},{href:"#\u4e8c\u3001\u9875\u9762",title:"\u4e8c\u3001\u9875\u9762",h:2}]}},demo:!1},this.codes=[]},z=function(){this.item={cols:1,urls:{"zh-CN":"docs/performance.md"},content:{"zh-CN":{content:'<article><h2 id="Web-\u56fe\u6807">Web \u56fe\u6807<a onclick="window.location.hash = \'Web-\u56fe\u6807\'" class="anchor">#</a></h2><p>\u9ed8\u8ba4\u9664\u4e86 ng-zorro-antd \u81ea\u5e26 Web \u56fe\u6807\uff0c\u989d\u5916\u589e\u52a0\u4e86 <a target="_blank" href="//fontawesome.io/" data-url="//fontawesome.io/">font-awesome</a>\u3001<a target="_blank" href="//simplelineicons.com/" data-url="//simplelineicons.com/">simple-line-icons</a>\u3001<a target="_blank" href="//erikflowers.github.io/weather-icons/" data-url="//erikflowers.github.io/weather-icons/">weather-icons</a> \u4e09\u4e2a\u56fe\u6807\u5e93\uff0c\u5982\u679c\u4f60\u660e\u786e\u4e0d\u9700\u8981\uff0c\u53ef\u4ee5\u5220\u9664\uff1a</p><ul><li><p>\u79fb\u9664 <code>src/styles.less</code> \u5f15\u7528\u6837\u5f0f\u6587\u4ef6</p></li><li><p>\u79fb\u9664\u76f8\u5e94\u5305\u4f53</p></li></ul><h2 id="IE-\u4f18\u5316">IE \u4f18\u5316<a onclick="window.location.hash = \'IE-\u4f18\u5316\'" class="anchor">#</a></h2><p>ng-alain \u9ed8\u8ba4\u5f00\u542f\u4e86\u5bf9 IE \u7684\u652f\u6301\uff0c\u8fd9\u7ed9\u5305\u4f53\u53ca\u6837\u5f0f\u589e\u52a0\u4e86\u4e00\u5b9a\u5927\u5c0f\uff0c\u5018\u82e5\u4f60\u5f88\u5728\u610f\u5e76\u4e14\u4e0d\u9700\u8981 <code>IE10</code> \u53ca\u4ee5\u4e0b\u7684\u7248\u672c\u652f\u6301\u7684\u8bdd\uff0c\u53ef\u4ee5\u8c03\u6574\u4e24\u9879\u914d\u7f6e\uff1a</p><p>\u4e00\uff1a\u5728 <code>package.json</code> \u52a0\u4e0a <code>browserslist</code> \u8282\u70b9\u51cf\u5c11 <code>flexbox</code> \u524d\u7f00\u6837\u5f0f\u4ece\u800c\u51cf\u5c11\u5305\u4f53\u5927\u5c0f\uff1a</p><pre class="hljs language-json"><code>"browserslist": [\n "last 2 versions",\n "not ie <= 10",\n "not ie_mob <= 10"\n]</code></pre><p>\u4e8c\uff1a\u5173\u95ed <code>src/polyfills.ts</code> \u4e0b <code>IE9, IE10 and IE11 requires all of the following polyfills.</code> \u8282\u70b9\u7684\u5185\u5bb9\uff0c\u53ef\u4ee5\u51cf\u5c11 <code>polyfills.js</code> \u7684\u5305\u4f53\u5927\u5c0f\u3002</p></article>',meta:{order:80,title:{"en-US":"Performance","zh-CN":"\u4f18\u5316"},type:"Advance"},toc:[{href:"#Web-\u56fe\u6807",title:"Web \u56fe\u6807",h:2},{href:"#IE-\u4f18\u5316",title:"IE \u4f18\u5316",h:2}]}},demo:!1},this.codes=[]},A=function(){this.item={cols:1,urls:{"zh-CN":"docs/scaffold.md"},content:{"zh-CN":{content:'<article><h2 id="\u76ee\u5f55\u7ed3\u6784">\u76ee\u5f55\u7ed3\u6784<a onclick="window.location.hash = \'\u76ee\u5f55\u7ed3\u6784\'" class="anchor">#</a></h2><p>\u4ee5\u4e0b\u811a\u624b\u67b6\u76ee\u5f55\u7ed3\u6784\u6982\u7565\u56fe\uff1a</p><pre class="hljs language-null"><code>\u251c\u2500\u2500 _mock # Mock \u6570\u636e\u89c4\u5219\n\u251c\u2500\u2500 src\n\u2502\xa0\xa0 \u251c\u2500\u2500 app\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 core # \u6838\u5fc3\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 i18n\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 net\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 default.interceptor.ts # \u9ed8\u8ba4HTTP\u62e6\u622a\u5668\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 services\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 startup.service.ts # \u521d\u59cb\u5316\u9879\u76ee\u914d\u7f6e\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 core.module.ts # \u6838\u5fc3\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 layout # \u901a\u7528\u5e03\u5c40\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 ** # \u4e1a\u52a1\u76ee\u5f55\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 routes.module.ts # \u4e1a\u52a1\u8def\u7531\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 routes-routing.module.ts # \u4e1a\u52a1\u8def\u7531\u6ce8\u518c\u53e3\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 shared # \u5171\u4eab\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 shared.module.ts # \u5171\u4eab\u6a21\u5757\u6587\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u251c\u2500\u2500 app.component.ts # \u6839\u7ec4\u4ef6\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 app.module.ts # \u6839\u6a21\u5757\n\u2502\xa0\xa0 \u2502\xa0\xa0 \u2514\u2500\u2500 delon.module.ts # @delon\u6a21\u5757\u5bfc\u5165\n\u2502\xa0\xa0 \u251c\u2500\u2500 assets # \u672c\u5730\u9759\u6001\u8d44\u6e90\n\u2502\xa0\xa0 \u251c\u2500\u2500 environments # \u73af\u5883\u53d8\u91cf\u914d\u7f6e\n\u2502\xa0\xa0 \u251c\u2500\u2500 styles # \u6837\u5f0f\u76ee\u5f55\n\u2514\u2500\u2500 \u2514\u2500\u2500 style.less # \u6837\u5f0f\u5f15\u5bfc\u5165\u53e3</code></pre><p>\u4ee5\u4e0b\u662f\u9488\u5bf9\u5404\u4e2a\u76ee\u5f55\u53ca\u6587\u4ef6\u8bf4\u660e\u53ca\u4f7f\u7528\u76ee\u7684\u3002</p><p><strong>_mock</strong></p><p>Mock \u6570\u636e\u89c4\u5219\u76ee\u5f55\uff0c\u82e5\u4f60\u901a\u8fc7 <a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a> \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a <code>--mock</code> \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981 Mock \u529f\u80fd\u3002</p><p><strong>src/app/core/core.module.ts</strong></p><p>\u6838\u5fc3\u6a21\u5757\uff0c\u53ea\u4f1a\u5bfc\u5165\u4e00\u6b21\u3002\u56e0\u6b64\uff0c\u9488\u5bf9\u6574\u4e2a<strong>\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981</strong>\u4f7f\u7528\u7684\u7eaf\u670d\u52a1\u7c7b\uff08\u4f8b\u5982\uff1a\u6d88\u606f\u3001\u6570\u636e\u8bbf\u95ee\u7b49\uff09\uff0c\u90fd\u5e94\u8be5\u5b58\u5728\u8fd9\u91cc\u3002</p><p><strong>src/app/core/i18n</strong></p><p><a href="/docs/i18n" data-url="/docs/i18n">\u56fd\u9645\u5316</a>\u6570\u636e\u52a0\u8f7d\u53ca\u5904\u7406\u76f8\u5173\u7c7b\uff0c\u82e5\u4f60\u901a\u8fc7 <a href="/cli" data-url="/cli">\u547d\u4ee4\u884c\u5de5\u5177</a> \u521b\u5efa\u9879\u76ee\u65f6\u53ef\u4ee5\u6307\u5b9a <code>-di</code> \u53c2\u6570\u51b3\u5b9a\u662f\u5426\u9700\u8981\u56fd\u9645\u5316\u652f\u6301\u3002</p><p><strong>src/app/core/net</strong></p><p>\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u4f60\u53ef\u4ee5\u5728\u8fd9\u91cc\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u53c2\u6570\u3001\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\u52a8\u4f5c\u3002</p><p><strong>src/app/core/services/startup.service.ts</strong></p><p>\u5f53\u4f60\u9700\u8981\u5728 Angular \u542f\u52a8\u524d\u6267\u884c\u4e00\u4e9b\u8fdc\u7a0b\u6570\u636e\uff08\u4f8b\u5982\uff1a\u5e94\u7528\u4fe1\u606f\u3001\u7528\u6237\u4fe1\u606f\u7b49\uff09\u65f6\u975e\u5e38\u6709\u7528\u3002</p><blockquote><p>\u5b83\u662f\u4e00\u4e2a\u5355\u7eaf\u7684\u65b9\u6cd5\u4e14\u8fd4\u56de\u4e00\u4e2a <code>Promise</code> \u5bf9\u8c61\uff0c\u9664\u975e\u660e\u786e\u6267\u884c <code>resolve(null)</code> \u5426\u5219 Angular \u5c06\u4f1a\u4e2d\u6b62\u542f\u52a8\u3002</p></blockquote><p><strong>src/app/layout</strong></p><p>\u5e03\u5c40\u6587\u4ef6\u4ee3\u7801\uff0c\u53c2\u8003\u9875\u9762\u7ed3\u6784\u5c0f\u8282\u3002</p><p><strong>src/app/routes</strong></p><p>\u4e1a\u52a1\u6a21\u5757\uff0c\u4f60\u7684\u6240\u6709\u4e1a\u52a1\u4ee3\u7801\u90fd\u5c06\u5728\u8fd9\u91cc\u3002</p><p><strong>src/app/shared/shared.module.ts</strong></p><p>\u5171\u4eab\u6a21\u5757\uff0c\u6307\u5f53\u4f60\u9700\u8981\u9488\u5bf9\u6574\u4e2a<strong>\u4e1a\u52a1\u6a21\u5757\u90fd\u9700\u8981</strong>\u4f7f\u7528\u7684\u4e00\u4e9b\u7b2c\u4e09\u65b9\u6a21\u5757\u3001\u81ea\u5b9a\u4e49\u7ec4\u4ef6\u3001\u81ea\u5b9a\u4e49\u6307\u4ee4\uff0c\u90fd\u5e94\u8be5\u5b58\u5728\u8fd9\u91cc\u3002</p><p><strong>src/app/delon.module.ts</strong></p><p>\u9488\u5bf9 @delon \u7cfb\u5217\u7684\u6a21\u5757\u5bfc\u5165\u96c6\u5408\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5bfc\u5165\u6240\u6709\u6a21\u5757\uff0c\u4f60\u53ef\u4ee5\u5229\u7528<a href="/docs/performance" data-url="/docs/performance">\u4f18\u5316</a>\u7ae0\u8282\uff0c\u8fdb\u4e00\u6b65\u6309\u9700\u4f18\u5316\u3002</p><p><strong>src/styles/_alain-custom-variables.less</strong></p><p><strong>\u3010\u3010\u52ff\u5220\u3011\u3011</strong> \u53ef\u4ee5\u6839\u636e\u9700\u6c42\u8c03\u6574 alain \u7684\u9ed8\u8ba4\u53c2\u6570\u3002</p><p><strong>src/environments</strong></p><p>\u5e94\u7528\u73af\u5883\u53d8\u91cf\uff0c\u5305\u542b\u4ee5\u4e0b\u503c\uff1a</p><ul><li><p><code>SERVER_URL</code> \u6240\u6709HTTP\u8bf7\u6c42\u7684\u524d\u7f00</p></li><li><p><code>production</code> \u662f\u5426\u751f\u4ea7\u73af\u5883</p></li><li><p><code>useHash</code> \u8def\u7531\u662f\u5426useHash\u6a21\u5f0f</p></li></ul><h2 id="\u9875\u9762\u7ed3\u6784">\u9875\u9762\u7ed3\u6784<a onclick="window.location.hash = \'\u9875\u9762\u7ed3\u6784\'" class="anchor">#</a></h2><p>\u6574\u4f53\u5e03\u5c40\u662f\u6307\u5305\u542b\u5bfc\u822a\u3001\u4fa7\u8fb9\u680f\u3001\u5185\u5bb9\u533a\u57df\u3001\u9875\u811a\u7b49\u6700\u5916\u5c42\u7684\u6846\u67b6\u7ed3\u6784\u3002</p><p>\u540c\u65f6\u5728\u5185\u90e8\u533a\u57df\u5185\uff0c\u4e5f\u9700\u8981\u533a\u5757\u7684\u5e03\u5c40\u8bf8\u5982\u8868\u5355\u3001\u641c\u7d22\u6846\u3001\u5217\u8868\u9875\u7b49\uff0c\u9488\u5bf9\u6b64\u76ee\u524d ng-zorro-antd \u6709\u4e24\u5957\u5e03\u5c40\u65b9\u6848\uff1a<a target="_blank" href="https://ng.ant.design/#/components/layout" data-url="https://ng.ant.design/#/components/layout">Layout</a> \u548c <a target="_blank" href="https://ng.ant.design/#/components/grid" data-url="https://ng.ant.design/#/components/grid">Grid</a>\u3002</p><p>\u811a\u624b\u67b6\u9ed8\u8ba4\u63d0\u4f9b\u4e09\u79cd\u6574\u4f53\u5e03\u5c40\u65b9\u6848\uff1a</p><table><thead><tr><th>\u7c7b\u578b</th><th>\u4f4d\u7f6e</th><th>\u63cf\u8ff0</th></tr></thead><tbody><tr><td>\u57fa\u7840</td><td><a target="_blank" href="https://github.com/cipchk/ng-alain/tree/master/src/app/layout/default" data-url="https://github.com/cipchk/ng-alain/tree/master/src/app/layout/default">LayoutDefaultComponent</a></td><td>-</td></tr><tr><td>\u5168\u5c4f</td><td><a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/fullscreen" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/fullscreen">LayoutFullScreenComponent</a></td><td>-</td></tr><tr><td>\u7528\u6237\u6388\u6743</td><td><a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/passport" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/passport">LayoutPassportComponent</a></td><td>-</td></tr></tbody></table><h3 id="\u57fa\u7840\u5e03\u5c40">\u57fa\u7840\u5e03\u5c40<a onclick="window.location.hash = \'\u57fa\u7840\u5e03\u5c40\'" class="anchor">#</a></h3><p>\u6309\u4e0a-\u5de6-\u53f3\u5e03\u5c40\u65b9\u5f0f\uff0c\u8fd0\u7528\u4e8e<strong>\u4e1a\u52a1\u9875</strong>\u7684\u5f00\u53d1\u3002\u5176\u89c4\u8303\u7ec6\u8282\uff1a</p><ul><li><p>\u9876\u90e8\u533a\u57df\u9ad8\u5ea6 <code>64px</code>\uff08\u53c2\u6570\uff1a<code>@header-hg</code>\uff09</p></li><li><p>\u4fa7\u8fb9\u533a\u57df\u5bbd\u5ea6 <code>200px</code>\uff08\u53c2\u6570\uff1a<code>@aside-wd</code>\uff09</p><ul><li><p>\u5f53\u5c4f\u5e55\u4f4e\u4e8e <code>1140px</code> \u5bbd\u65f6\u9690\u85cf\u4fa7\u8fb9\u5bfc\u822a</p></li><li><p>\u5f53\u5c4f\u5e55\u4f4e\u4e8e <code>1140px</code> \u5bbd\u65f6\u6253\u5f00\u4fa7\u8fb9\u5bfc\u822a\u4e3a <code>fixed</code> \u72b6\u6001</p></li><li><p>\u4e3b\u8981\u5305\u62ec\u4e00\u4e2a <a href="/components/sidebar-nav" data-url="/components/sidebar-nav">sidebar-nav\uff08\u70b9\u51fb\u67e5\u770bAPI\uff09</a> \u7ec4\u4ef6</p></li></ul></li></ul><blockquote><p>\u53c2\u6570\u662f\u6307\u53ef\u4ee5\u901a\u8fc7 <code>src/styles/_alain-custom-variables.less</code> \u6587\u4ef6\u6309\u9700\u8981\u8c03\u6574\u3002</p></blockquote><p><strong>\u9876\u90e8\u533a\u57df</strong></p><p>\u4f4d\u7f6e\uff1a<em>src/app/layout/default/header</em>\u3002</p><p>\u811a\u624b\u67b6\u9ed8\u8ba4\u63d0\u4f9b\u4e86\u4e00\u4e9b\u5e38\u89c4\u9876\u90e8\u533a\u57df\u7ec4\u4ef6\uff0c\u8fd9\u4e9b\u7ec4\u4ef6\u90fd\u5b58\u653e\u4e8e <em>components</em> \u76ee\u5f55\u4e2d\u3002\u540c\u65f6 <code>@delon/abc</code> \u4e5f\u63d0\u4f9b\u82e5\u5e72\u9876\u90e8\u7ec4\u4ef6\uff08\u4f8b\u5982\uff1a<a href="/components/notice-icon" data-url="/components/notice-icon">notice-icon</a> \u901a\u77e5\u83dc\u5355\u7ec4\u4ef6\uff09\u3002\u4f60\u53ef\u4ee5\u6839\u636e\u63d0\u4f9b\u7684\u7ec4\u4ef6\u81ea\u884c\u7ec4\u5408\u6216\u81ea\u884c\u5f00\u53d1\u3002</p><blockquote><p>\u811a\u624b\u67b6\u652f\u6301\u54cd\u5e94\u5f0f\u5e03\u5c40\uff0c\u5bf9\u4e8e\u9876\u90e8\u533a\u57df\u53ef\u80fd\u4f1a\u662f\u5728\u5c0f\u5c4f\u5e55\u4e0b\u9700\u8981\u9690\u85cf\u4e00\u4e9b\u7ec4\u4ef6\uff0c\u56e0\u6b64\u4f60\u53ef\u4ee5\u5728\u5bf9\u5e94\u7684DOM\u8282\u70b9\u4e0a\u52a0\u4e0a <code>hidden-xs</code> \u8868\u793a\u5f53\u5c4f\u5e55\u5c0f\u4e8e <code>768px</code> \u65f6\u81ea\u52a8\u9690\u85cf\u3002</p></blockquote><p><strong>\u4fa7\u8fb9\u533a\u57df</strong></p><p>\u4f4d\u7f6e\uff1a<em>src/app/layout/default/sidebar</em>\u3002</p><p>\u53ea\u5305\u62ec\u4e00\u4e2a\u7528\u6237\u4fe1\u606f\u548c\u4e3b\u83dc\u5355\u3002\u4e3b\u83dc\u5355\u662f\u4e00\u4e2a <a href="/components/sidebar-nav" data-url="/components/sidebar-nav">sidebar-nav</a> \u7ec4\u4ef6\uff0c\u5177\u4f53\u4f7f\u7528\u7ec6\u8282\u8bf7\u81f3<a href="/components/sidebar-nav" data-url="/components/sidebar-nav">\u4e1a\u52a1\u7ec4\u4ef6</a>\u4e2d\u67e5\u8be2\u3002</p><p><strong>\u5185\u90e8\u533a\u57df</strong></p><p>\u5185\u5bb9\u533a\u57df\u662f\u4e1a\u52a1\u9875\u533a\u57df\uff0c\u89c4\u8303\u7ec6\u8282\uff1a</p><ul><li><p>\u5185\u5bb9\u8ddd\u79bb\u9875\u9762\u6807\u51c6\u3001\u4fa7\u8fb9\u3001\u53f3\u8fb9\u6eda\u52a8\u6761\u3001\u5e95\u90e8\uff0c\u8fd9\u56db\u8fb9\u8ddd\u4f9d\u4e00\u4e2a\u6807\u51c6Dashboard\u7684Gutter\u5bbd\u5ea6 <code>24px</code>\u3002</p></li></ul><h3 id="\u5168\u5c4f\u5e03\u5c40">\u5168\u5c4f\u5e03\u5c40<a onclick="window.location.hash = \'\u5168\u5c4f\u5e03\u5c40\'" class="anchor">#</a></h3><p>\u7528\u4e8e\u65e0\u987b\u4efb\u4f55\u9876\u90e8\u548c\u4fa7\u8fb9\u533a\u57df\uff0c\u4e00\u822c\u7528\u4e8e\u9ad8\u5b9a\u5236\u6027\u9875\u9762\uff0c\u8bf8\u5982\u5927\u5c4f\u5e55\u6570\u636e\u7b49\u3002</p><h3 id="\u7528\u6237\u6388\u6743\u5e03\u5c40">\u7528\u6237\u6388\u6743\u5e03\u5c40<a onclick="window.location.hash = \'\u7528\u6237\u6388\u6743\u5e03\u5c40\'" class="anchor">#</a></h3><p>\u7528\u4e8e <code>/passport/login</code> \u7cfb\u5217\u7528\u6237\u76f8\u5173\u9875\u3002</p><h3 id="\u81ea\u5b9a\u4e49\u5e03\u5c40">\u81ea\u5b9a\u4e49\u5e03\u5c40<a onclick="window.location.hash = \'\u81ea\u5b9a\u4e49\u5e03\u5c40\'" class="anchor">#</a></h3><p>\u5982\u679c\u63d0\u4f9b\u7684\u5e03\u5c40\u4e0d\u80fd\u6ee1\u8db3\u4f60\u7684\u8981\u6c42\uff0c\u5c31\u9700\u8981\u81ea\u5df1\u65b0\u5efa Layout \u6a21\u677f\u4e86\u3002\u53ea\u9700\u8981\u5728 layout.module.ts \u4e2d\u5b9a\u4e49\u5373\u53ef\u3002</p></article>',meta:{order:2,title:{"en-US":"Scaffold","zh-CN":"\u811a\u624b\u67b6\u7ed3\u6784"},type:"Basic"},toc:[{href:"#\u76ee\u5f55\u7ed3\u6784",title:"\u76ee\u5f55\u7ed3\u6784",h:2},{href:"#\u9875\u9762\u7ed3\u6784",title:"\u9875\u9762\u7ed3\u6784",h:2},{href:"#\u57fa\u7840\u5e03\u5c40",title:"\u57fa\u7840\u5e03\u5c40",h:3},{href:"#\u5168\u5c4f\u5e03\u5c40",title:"\u5168\u5c4f\u5e03\u5c40",h:3},{href:"#\u7528\u6237\u6388\u6743\u5e03\u5c40",title:"\u7528\u6237\u6388\u6743\u5e03\u5c40",h:3},{href:"#\u81ea\u5b9a\u4e49\u5e03\u5c40",title:"\u81ea\u5b9a\u4e49\u5e03\u5c40",h:3}]}},demo:!1},this.codes=[]},j=function(){this.item={cols:1,urls:{"zh-CN":"docs/server.md"},content:{"zh-CN":{content:'<article><p>ng-alain \u662f\u4e00\u5957\u57fa\u4e8e Angular \u6280\u672f\u6808\u7684\u5355\u9875\u9762\u5e94\u7528\uff0c\u6211\u4eec\u63d0\u4f9b\u7684\u662f\u524d\u7aef\u4ee3\u7801\u548c\u672c\u5730\u6a21\u62df\u6570\u636e\u7684\u5f00\u53d1\u6a21\u5f0f\uff0c\n\u901a\u8fc7 Restful API \u7684\u5f62\u5f0f\u548c\u4efb\u4f55\u6280\u672f\u6808\u7684\u670d\u52a1\u7aef\u5e94\u7528\u4e00\u8d77\u5de5\u4f5c\u3002\u4e0b\u9762\u5c06\u7b80\u5355\u4ecb\u7ecd\u548c\u670d\u52a1\u7aef\u4ea4\u4e92\u7684\u57fa\u672c\u5199\u6cd5\u3002</p><h2 id="\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b">\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b<a onclick="window.location.hash = \'\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b\'" class="anchor">#</a></h2><p>\u5728 ng-alain \u4e2d\uff0c\u4e00\u4e2a\u5b8c\u6574\u7684\u524d\u7aef UI \u4ea4\u4e92\u5230\u670d\u52a1\u7aef\u5904\u7406\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a</p><ol><li><p>\u9996\u6b21\u542f\u52a8 Angular \u6267\u884c <code>APP_INITIALIZER</code>\uff1b</p></li><li><p>UI \u7ec4\u4ef6\u4ea4\u4e92\u64cd\u4f5c\uff1b</p></li><li><p>\u4f7f\u7528\u5c01\u88c5\u7684 <a href="/theme/http" data-url="/theme/http">_HttpClient</a> \u53d1\u9001\u8bf7\u6c42\uff1b</p></li><li><p>\u89e6\u53d1\u7528\u6237\u8ba4\u8bc1\u62e6\u622a\u5668 <a href="/auth/getting-started" data-url="/auth/getting-started">@delon/auth</a>\uff0c\u7edf\u4e00\u52a0\u5165 <code>token</code> \u53c2\u6570\uff1b</p><ul><li><p>\u82e5\u672a\u5b58\u5728 <code>token</code> \u6216\u5df2\u8fc7\u671f\u4e2d\u65ad\u540e\u7eed\u8bf7\u6c42\uff0c\u76f4\u63a5\u8df3\u8f6c\u81f3\u767b\u5f55\u9875\uff1b</p></li></ul></li><li><p>\u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u524d\u7f00\u7b49\u4fe1\u606f\uff1b</p></li><li><p>\u83b7\u53d6\u670d\u52a1\u7aef\u8fd4\u56de\uff1b</p></li><li><p>\u89e6\u53d1\u9ed8\u8ba4\u62e6\u622a\u5668\uff0c\u7edf\u4e00\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u3001\u4e1a\u52a1\u5f02\u5e38\u7b49\uff1b</p></li><li><p>\u6570\u636e\u66f4\u65b0\uff0c\u5e76\u5237\u65b0 UI\u3002</p></li></ol><h3 id="\u62e6\u622a\u5668">\u62e6\u622a\u5668<a onclick="window.location.hash = \'\u62e6\u622a\u5668\'" class="anchor">#</a></h3><p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5728\u6839\u6a21\u5757\u6ce8\u518c\u4e86\u4e24\u4e2a\u62e6\u622a\u5668 <a target="_blank" href="https://github.com/cipchk/delon/blob/master/packages/auth/token/simple/simple.interceptor.ts" data-url="https://github.com/cipchk/delon/blob/master/packages/auth/token/simple/simple.interceptor.ts">SimpleInterceptor</a> \u548c <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/core/net/default.interceptor.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/core/net/default.interceptor.ts">DefaultInterceptor</a>\uff0c\u4e14\u6267\u884c\u987a\u5e8f\u6309\u6ce8\u518c\u987a\u5e8f\u6267\u884c\u3002</p><p><strong>SimpleInterceptor</strong></p><p><a href="/docs/auth" data-url="/docs/auth">\u7528\u6237\u8ba4\u8bc1</a>\u5185\u7f6e\u7528\u4e8e\u81ea\u52a8\u4e3a\u8bf7\u6c42\u6dfb\u52a0 <code>token</code> \u53c2\u6570\u7684\u62e6\u622a\u5668\u3002\u8fd9\u91cc\u8fd8\u6709\u4e00\u4e2a\u53eb <a target="_blank" href="https://github.com/cipchk/delon/blob/master/packages/auth/token/jwt/jwt.interceptor.ts" data-url="https://github.com/cipchk/delon/blob/master/packages/auth/token/jwt/jwt.interceptor.ts">JWTInterceptor</a> \u62e6\u622a\u5668\uff0c\u662f\u4e00\u4e2a\u6807\u51c6 JWT \u89c4\u8303\uff0c\u82e5\u540e\u7aef\u91c7\u7528\u6807\u51c6JWT\u53ef\u4ee5\u76f4\u63a5\u6362\u6210JWTInterceptor\u62e6\u622a\u5668\u3002</p><p><strong>DefaultInterceptor</strong></p><p><a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/core/net/default.interceptor.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/core/net/default.interceptor.ts">DefaultInterceptor</a> \u62e6\u622a\u5668\u53ea\u662f\u63d0\u4f9b\u4e00\u4e2a\u62e6\u622a\u5668\u7684\u5199\u6cd5\uff0c\u9ed8\u8ba4\u5305\u542b\u4e86\u7edf\u4e00\u5904\u7406\u670d\u52a1\u5668\u8bf7\u6c42\u524d\u7f00\u3001\u5904\u7406\u8bf7\u6c42\u5f02\u5e38\u53ca\u4e1a\u52a1\u5f02\u5e38\u7684\u793a\u4f8b\u4ee3\u7801\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u4f60\u81ea\u5df1\u7684\u9700\u6c42\u505a\u8c03\u6574\u3002</p><p><strong>\u6ce8\u610f\u70b9</strong></p><p>\u6211\u4eec\u53ef\u4ee5\u628a\u62e6\u622a\u5668 <code>intercept</code> \u65b9\u6cd5\u5185\uff0c\u4ee5 <code>next.handle(req)</code> \u4e3a\u5206\u754c\u70b9\uff0c\u524d\u90e8\u5206\u4e3a\u8bf7\u6c42\u524d\uff0c<code>pipe</code> \u90e8\u5206\u4e3a\u63a5\u6536\u540e\u3002\u8fd9\u6837\u4f1a\u66f4\u660e\u786e\u77e5\u9053\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u524d\u8981\u505a\uff0c\u54ea\u4e00\u90e8\u5206\u662f\u8bf7\u6c42\u540e\u4f1a\u6267\u884c\u7684\u3002\u6709\u5173\u66f4\u591a\u62e6\u622a\u5668\u77e5\u8bc6\u8bf7\u53c2\u8003\u5b98\u7f51\u3002</p><h2 id="\u5f00\u53d1\u73af\u5883">\u5f00\u53d1\u73af\u5883<a onclick="window.location.hash = \'\u5f00\u53d1\u73af\u5883\'" class="anchor">#</a></h2><p>\u6b63\u5e38\u60c5\u51b5\u4e0b\u5f00\u53d1\u73af\u5883\u548c\u751f\u4ea7\u73af\u5883\u4e0d\u662f\u540c\u4e00\u4e2a\u540e\u7aef\u8bf7\u6c42\u6e90\uff0c\u5b9e\u9645\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6e <a target="_blank" href="https://github.com/cipchk/ng-alain/tree/master/src/environments" data-url="https://github.com/cipchk/ng-alain/tree/master/src/environments">environment</a> \u76ee\u5f55\u4e0b <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/environments/environment.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/environments/environment.ts">environment.ts</a> \u548c <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/environments/environment.prod.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/environments/environment.prod.ts">environment.prod.ts</a> \u6539\u53d8\u4e0d\u540c\u73af\u5883\u7684\u8bf7\u6c42\u6e90\u3002</p><blockquote><p>environment \u5b9e\u9645\u662f\u4e00\u4e2aJSON\u5bf9\u8c61\uff0c\u4f60\u53ef\u4ee5\u7ec4\u7ec7\u4e0d\u540c\u5f62\u5f0f\u6765\u6ee1\u8db3\u591a\u8bf7\u6c42\u6e90\u7684\u95ee\u9898\u3002</p></blockquote><h2 id="Mock">Mock<a onclick="window.location.hash = \'Mock\'" class="anchor">#</a></h2><p>\u6709\u65f6\u5019\u5e0c\u671b\u4f18\u5148\u5f00\u53d1\u524d\u7aef\u65f6\uff0c\u53ef\u4ee5\u5229\u7528 @delon/mock \u6765\u6a21\u62df\u8bf7\u6c42\u6570\u636e\uff0c\u5b9e\u9645\u539f\u7406\u662f\u5229\u7528\u62e6\u622a\u5668\uff0c\u5bf9\u5339\u914d\u7684URL\u76f4\u63a5\u8fd4\u56de\u6570\u636e\uff0c\u800c\u4e0d\u662f\u53d1\u9001\u4e00\u4e2aHTTP\u8bf7\u6c42\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u53ea\u5bf9\u6d4b\u8bd5\u73af\u5883\u6709\u6548\u3002\u5f53\u7136\u901a\u5e38\u60c5\u51b5\u4e0b\u4f60\u9700\u8981\u786e\u4fdd Mock \u63a5\u53e3\u7684\u6570\u636e\u4e0e\u540e\u7aef\u4fdd\u6301\u4e00\u81f4\uff0c\u4f60\u53ef\u4ee5\u5728 <code>_mock</code> \u76ee\u5f55\u4e0b\u521b\u5efa\u76f8\u5e94\u7684 Mock \u63a5\u53e3\uff1a</p><pre class="hljs language-$1"><code>export const USERS = {\n \'GET /users\': { users: [1, 2], total: 2 }\n}</code></pre><p>\u56e0\u6b64\u5bf9\u4e8e\u6d4b\u8bd5\u73af\u5883\u4e0b\u5f53\u9047\u5230 <code>/users</code> \u8bf7\u6c42\u76f4\u63a5\u8fd4\u56de <code>{ users: [1, 2], total: 2 }</code> \u6570\u636e\u3002\u6709\u5173\u66f4\u591a Mock \u8bed\u6cd5\u548c\u4f7f\u7528\u65b9\u5f0f\u53c2\u8003<a href="/docs/mock" data-url="/docs/mock">\u8fd9\u91cc</a>\u3002</p><p><strong>\u6ce8\uff1a</strong> \u5f53\u4f60\u4e0d\u9700\u8981\u67d0\u4e2a\u8bf7\u6c42\u7684 Mock \u63a5\u53e3\u65f6\uff0c\u52a1\u5fc5\u8981\u6ce8\u91ca\u6389\u6216\u79fb\u9664\u5b83\u3002</p><h2 id="\u5e38\u89c1\u95ee\u9898">\u5e38\u89c1\u95ee\u9898<a onclick="window.location.hash = \'\u5e38\u89c1\u95ee\u9898\'" class="anchor">#</a></h2><p><strong>Q\uff1a</strong> \u8bf7\u6c42\u53ef\u80fd\u88ab\u62d2\u7edd\u6216\u76f4\u63a5\u8fd4\u56de <code>401</code> ?</p><p>\u811a\u624b\u67b6\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u4f7f\u7528\u4e86 <code>@delon/auth</code> \u7684 <code>SimpleInterceptor</code> \u62e6\u622a\u5668\uff0c\u5bfc\u81f4\u5728\u8bf7\u6c42\u8fc7\u7a0b\u4e2d\u82e5\u53d1\u73b0\u65e0\u6cd5\u83b7\u53d6 Token \u65f6\u4f1a\u76f4\u63a5\u8fd4\u56de\u9519\u8bef\u3002</p><p><a href="/docs/auth" data-url="/docs/auth">\u7528\u6237\u8ba4\u8bc1</a>\u8fd9\u4e2a\u8fc7\u7a0b\u662f\u4e2d\u53f0\u5fc5\u5907\u7684\u3002</p></article>',meta:{order:40,title:{"en-US":"Work with Server","zh-CN":"\u548c\u670d\u52a1\u7aef\u8fdb\u884c\u4ea4\u4e92"},type:"Dev"},toc:[{href:"#\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",title:"\u524d\u7aef\u8bf7\u6c42\u6d41\u7a0b",h:2},{href:"#\u62e6\u622a\u5668",title:"\u62e6\u622a\u5668",h:3},{href:"#\u5f00\u53d1\u73af\u5883",title:"\u5f00\u53d1\u73af\u5883",h:2},{href:"#Mock",title:"Mock",h:2},{href:"#\u5e38\u89c1\u95ee\u9898",title:"\u5e38\u89c1\u95ee\u9898",h:2}]}},demo:!1},this.codes=[]},M=function(){this.item={cols:1,urls:{"zh-CN":"docs/style-guide.md"},content:{"zh-CN":{content:'<article><p>Angular CLI \u6784\u5efa\u7684\u9879\u76ee\u5c31\u5176\u76ee\u5f55\u7ed3\u6784\u800c\u8a00\u5df2\u7ecf\u975e\u5e38\u68d2\u4e86\uff0c\u540c\u65f6\u5b98\u7f51\u4e5f\u6709\u4e00\u4efd <a target="_blank" href="https://angular.io/guide/styleguide" data-url="https://angular.io/guide/styleguide">Angular Style Guide</a>\uff08<a target="_blank" href="https://angular.cn/guide/styleguide" data-url="https://angular.cn/guide/styleguide">\u4e2d\u6587\u7248</a>\uff09\u98ce\u683c\u6307\u5357\uff0c\u5efa\u8bae\u597d\u597d\u9605\u8bfb\u51e0\u904d\u3002\u9664\u6b64\u4e4b\u5916\uff0cng-alain \u4e5f\u6709\u4e00\u90e8\u5206\u7f16\u7801\u98ce\u683c\uff0c\u5982\u4e0b\u8bf4\u660e\u53ef\u80fd\u5bf9\u4e8e\u4f60\u9605\u8bfb\u4ee3\u7801\u65f6\u6709\u7528\u3002</p><h2 id="\u98ce\u683c\u6307\u5357">\u98ce\u683c\u6307\u5357<a onclick="window.location.hash = \'\u98ce\u683c\u6307\u5357\'" class="anchor">#</a></h2><h3 id="\u533a\u57df">\u533a\u57df<a onclick="window.location.hash = \'\u533a\u57df\'" class="anchor">#</a></h3><p>\u5c06\u4e00\u7ec4\u76f8\u540c\u5c5e\u6027\u4f7f\u7528 <code>// region:</code> & <code>// endregion</code> \u81ea\u7531\u6298\u53e0\u4ee3\u7801\u9884\u5904\u7406\u6307\u4ee4\uff08\u9650VSCODE\uff09\uff0c\u4ee5 <code>shared.module.ts</code> \u6587\u4ef6\u4e3a\u4f8b\uff1a</p><pre class="hljs language-$1"><code>// region: third libs\nimport { NzSchemaFormModule } from \'nz-schema-form\';\nconst THIRDMODULES = [ NzSchemaFormModule ];\n// endregion</code></pre><p>\u5c06\u6240\u6709\u7b2c\u4e09\u65b9\u6a21\u5757\u653e\u5728 <code>third libs</code> \u533a\u57df\u5f53\u4e2d\uff0c\u5e76\u7edf\u4e00\u5c06\u6ce8\u518c\u6a21\u5757\u653e\u8fdb <code>THIRDMODULES</code> \u53d8\u91cf\u4e2d\u3002\u4f60\u65e0\u987b\u518d\u5173\u5fc3\u5bfc\u5165\u548c\u5bfc\u51fa\u7684\u95ee\u9898\uff0c\u56e0\u4e3a <code>THIRDMODULES</code> \u6570\u7ec4\u9ed8\u8ba4\u52a0\u5165\u5bfc\u5165\u548c\u5bfc\u51fa\u884c\u5217\u4e2d\u3002</p><p>\u5f53\u6211\u4eec\u5728\u9605\u8bfb\u4e00\u4e2a\u6bd4\u8f83\u957f\u6587\u4ef6\u65f6\uff0c\u53ef\u4ee5\u5728VSCODE\u91cc\u6298\u53e0\u90e8\u5206\u4ee3\u7801\uff0c\u66f4\u6709\u52a9\u4e8e\u9605\u8bfb\u3002</p><h3 id="API\u6587\u6863">API\u6587\u6863<a onclick="window.location.hash = \'API\u6587\u6863\'" class="anchor">#</a></h3><p>\u5e94\u7528\u603b\u662f\u514d\u4e0d\u4e86\u4e1a\u52a1\u7ec4\u4ef6\u7684\u5f00\u53d1\uff0c\u6211\u4eec\u65e0\u6cd5\u4fdd\u8bc1\u82e5\u5e72\u65f6\u95f4\u4e4b\u540e\u4f60\u8fd8\u80fd\u8bb0\u5f97\u8fd9\u4e9b\uff0c\u56e0\u6b64\u52a1\u5fc5\u5728\u6bcf\u4e00\u4e2a\u4e1a\u52a1\u7ec4\u4ef6\u9644\u5e26 <code>README.md</code> \u6587\u6863\uff0c\u5e76\u63cf\u8ff0API\u3001DEMO\u7b49\u4fe1\u606f\uff0c\u4f8b\u5982\uff1a</p><pre class="hljs language-markdown"><code>## \u4f55\u65f6\u4f7f\u7528\uff1f\n\n\u7565\n\n## DEMO\n\n\u7565\n\n## API\n\n\u53c2\u6570 | \u8bf4\u660e | \u7c7b\u578b | \u9ed8\u8ba4\u503c\n----|------|-----|------\nsrc | \u56fe\u7247\u5730\u5740 | `string` | -</code></pre><h3 id="\u6a21\u5757\u6ce8\u518c">\u6a21\u5757\u6ce8\u518c<a onclick="window.location.hash = \'\u6a21\u5757\u6ce8\u518c\'" class="anchor">#</a></h3><p>\u8bf7\u53c2\u6570<a href="/docs/module" data-url="/docs/module">\u6a21\u5757\u6ce8\u518c\u6307\u5bfc\u539f\u5219</a>\u3002</p><h2 id="\u8f85\u52a9\u9879">\u8f85\u52a9\u9879<a onclick="window.location.hash = \'\u8f85\u52a9\u9879\'" class="anchor">#</a></h2><p>ng-alain \u914d\u7f6e\u4e86\u4e00\u4e9b\u9488\u5bf9 CLI \u9009\u9879\uff0c\u4ee5\u4fbf\u66f4\u597d\u8fdb\u884c\u7f16\u7801\u5de5\u4f5c\u3002</p><h3 id="CLI">CLI<a onclick="window.location.hash = \'CLI\'" class="anchor">#</a></h3><p>vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u4f60\u53ef\u4ee5\u5728\u9879\u76ee\u7684\u4efb\u4f55\u76ee\u5f55\u91cc\u8f93\u5165\uff1a<code>ng g c list</code> \u751f\u6210\u7ec4\u4ef6\u7684\u76f8\u5e94\u7684\u6587\u4ef6\u3002</p><p>ng-alain \u9ed8\u8ba4\u914d\u7f6e\u4e86\u4e0d\u751f\u6210\u6837\u5f0f\u6587\u4ef6&\u5355\u5143\u6d4b\u8bd5\uff0c\u56e0\u6b64\uff0c\u4f60\u4f1a\u770b\u5230\u751f\u6210\u7684\u53ea\u6709 <code>.ts</code>\u3001<code>.html</code>\u3002\u8fd9\u662f\u56e0\u4e3a ng-alain \u63d0\u4f9b\u4e86\u975e\u5e38\u4e30\u5bcc\u7684\u6837\u5f0fAPI\uff0c\u5728\u5927\u591a\u6570\u9875\u9762\u4e2d\u81ea\u5b9a\u4e49\u6837\u5f0f\u5e76\u4e0d\u662f\u521a\u9700\u7684\uff1b\u540c\u65f6\uff0c\u5355\u5143\u6d4b\u8bd5\u4e5f\u662f\u5982\u6b64\u3002</p><p>\u5f53\u7136\uff0c\u4f60\u53ef\u4ee5\u5f88\u5bb9\u6613\u5728 <code>angular.json</code> \u4e2d\u8c03\u6574\u9ed8\u8ba4\u914d\u7f6e\u3002</p><h3 id="vscode-snippets">vscode snippets<a onclick="window.location.hash = \'vscode-snippets\'" class="anchor">#</a></h3><p>vscode \u662f\u7f16\u5199 Angular \u6700\u4f73\u7684\u9009\u62e9\uff0c\u81ea\u7136 ng-alain \u4e5f\u5236\u4f5c\u4e86\u76f8\u5e94 snippets \u6269\u5c55\u63d2\u4ef6\uff1a<a target="_blank" href="//marketplace.visualstudio.com/items?itemName=cipchk.ng-zorro-vscode" data-url="//marketplace.visualstudio.com/items?itemName=cipchk.ng-zorro-vscode">ng-zorro-vscode</a>\u3002\u9664\u4e86\u5927\u91cf\u7684 ng-zorro-antd \u7ec4\u4ef6\u7247\u65ad\u4ee5\u5916\uff0c\u8fd8\u52a0\u5165\u4e86\u90e8\u5206 ng-alain \u7247\u65ad\uff0c\u4f8b\u5982\uff1a</p><pre class="hljs language-null"><code>nz-button => \u6784\u5efa\u4e00\u4e2a\u6309\u94ae\nnz-alain-content => \u6784\u5efa\u4e00\u4e2ang-alain\u9875\u9762\u6807\u9898\nnz-alain-pro.header => \u6784\u5efa\u4e00\u4e2apro\u7248\u672c\u7684\u9875\u9762\u6807\u9898</code></pre><h2 id="\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c">\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c<a onclick="window.location.hash = \'\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c\'" class="anchor">#</a></h2><p>ng-alain \u4f7f\u7528 <a target="_blank" href="https://prettier.io/" data-url="https://prettier.io/">Prettier</a> \u6765\u4f18\u5316\u4ee3\u7801\u98ce\u683c\uff0c\u5e76\u4e14\u4f7f\u5176\u7ed3\u679c\u7b26\u5408 <code>tslint.json</code>\u3002</p><p>\u63a8\u8350\u5b89\u88c5\u51e0\u4e2a\u63d2\u4ef6\u5728 vscode \u4e2d\u66f4\u53cb\u597d\u7684\u5f00\u53d1\uff1a</p><ul><li><p><a target="_blank" href="https://marketplace.visualstudio.com/items?itemName=cipchk.ng-zorro-vscode" data-url="https://marketplace.visualstudio.com/items?itemName=cipchk.ng-zorro-vscode">ng-zorro snippets</a></p></li><li><p><a target="_blank" href="https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode" data-url="https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode">Prettier - Code formatter</a></p></li><li><p><a target="_blank" href="https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig" data-url="https://marketplace.visualstudio.com/items?itemName=EditorConfig.EditorConfig">EditorConfig for VS Code</a></p></li><li><p><a target="_blank" href="https://marketplace.visualstudio.com/items?itemName=joelday.docthis" data-url="https://marketplace.visualstudio.com/items?itemName=joelday.docthis">Document This</a></p></li></ul><blockquote><p>\u53ef\u4ee5\u901a\u8fc7\u914d\u7f6e <code>.vscode/settings.json</code> \u7684 <code>formatOnSave</code> \u5728\u6587\u4ef6\u4fdd\u5b58\u65f6\u81ea\u52a8\u4fee\u590d\u4ee3\u7801\u98ce\u683c\u3002</p></blockquote><h2 id="Git">Git<a onclick="window.location.hash = \'Git\'" class="anchor">#</a></h2><h3 id="pre-commit">pre commit<a onclick="window.location.hash = \'pre-commit\'" class="anchor">#</a></h3><p><code>lint</code> \u53ef\u4ee5\u975e\u5e38\u6709\u6548\u7684\u5e2e\u52a9\u6211\u4eec\u66f4\u65e9\u53d1\u73b0bug\u3001\u66f4\u9ad8\u7684\u53ef\u8bfb\u6027\uff1b\u5982\u679c\u6211\u4eec\u80fd\u591f\u4fdd\u8bc1\u56e2\u961f\u5f00\u53d1\u8fc7\u7a0b\u4e2d\u6bcf\u4e00\u6b21 commit \u524d\u90fd\u81ea\u52a8\u505a\u4e00\u6b21 staged \u4e2d\u6587\u4ef6\u7684 lint \u7684\u8bdd\uff0c\u90a3\u4e0d\u662f\u975e\u5e38\u9177\u5417\uff1f</p><p>ng-alain \u914d\u7f6e\u4e86\u6bcf\u6b21\u5bf9 staged \u8fdb\u884c commit \u65f6\u4f1a\u9884\u5148\u505a lint\uff0c\u82e5\u53d1\u73b0\u9519\u8bef\u5219\u65e0\u6cd5\u63d0\u4ea4\u3002</p><p>\u9ed8\u8ba4\u5f00\u542f\u4e86 <code>*.ts</code>\u3001<code>*.less</code> \u7684\u63d0\u4ea4\u8fc7\u7a0b\u4e2d\u5f3a\u5236\u5bf9\u4ee3\u7801\u8fdb\u884c\u683c\u5f0f\u5316\uff0c\u4f60\u53ef\u4ee5\u901a\u8fc7\u4fee\u6539 <code>package.json</code> \u7684 <code>lint-staged</code> \u8282\u70b9\u6765\u6539\u53d8\u4e9b\u89c4\u5219\uff08\u4f8b\u5982\uff1a<code>prettier --write</code>\uff09\u3002</p></article>',meta:{order:90,title:{"en-US":"Style Guide","zh-CN":"\u7f16\u7801\u89c4\u8303\u5efa\u8bae"},type:"Advance"},toc:[{href:"#\u98ce\u683c\u6307\u5357",title:"\u98ce\u683c\u6307\u5357",h:2},{href:"#\u533a\u57df",title:"\u533a\u57df",h:3},{href:"#API\u6587\u6863",title:"API\u6587\u6863",h:3},{href:"#\u6a21\u5757\u6ce8\u518c",title:"\u6a21\u5757\u6ce8\u518c",h:3},{href:"#\u8f85\u52a9\u9879",title:"\u8f85\u52a9\u9879",h:2},{href:"#CLI",title:"CLI",h:3},{href:"#vscode-snippets",title:"vscode snippets",h:3},{href:"#\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",title:"\u4e00\u81f4\u7684\u4ee3\u7801\u98ce\u683c",h:2},{href:"#Git",title:"Git",h:2},{href:"#pre-commit",title:"pre commit",h:3}]}},demo:!1},this.codes=[]},N=function(){this.item={cols:1,urls:{"zh-CN":"docs/theme.md"},content:{"zh-CN":{content:'<article><p><a href="/theme" data-url="/theme">\u4e3b\u9898\u7cfb\u7edf\u6587\u6863</a>\u3002</p></article>',meta:{order:10,title:{"en-US":"Theme","zh-CN":"\u4e3b\u9898\u7cfb\u7edf"},type:"Advance"},toc:[]}},demo:!1},this.codes=[]},S=function(){this.item={cols:1,urls:{"zh-CN":"docs/upgrade.md"},content:{"zh-CN":{content:'<article><p>\u5728 <a href="/docs/architecture" data-url="/docs/architecture">\u4f53\u7cfb\u7ed3\u6784</a> \u4e2d\u6211\u4eec\u5df2\u7ecf\u63cf\u8ff0\u4e86 ng-alain \u811a\u624b\u67b6\u7684\u6574\u4f53\u6784\u6210\uff0c\u6211\u4eec\u82b1\u4e86\u5927\u91cf\u65f6\u95f4\u53bb\u5f00\u53d1\u4e00\u4e9b\u57fa\u7840\u5efa\u8bbe\uff0c\u5e76\u628a\u8fd9\u4e9b\u4ee5 <code>@delon/*</code> \u7cfb\u5217\u53d1\u5e03\u81f3 Npm \u5f53\u4e2d\uff0c\u4f7f\u5f97\u5347\u7ea7\u53d8\u5f97\u975e\u5e38\u8f7b\u677e\u3002</p><h2 id="\u53d1\u5e03\u89c4\u5219">\u53d1\u5e03\u89c4\u5219<a onclick="window.location.hash = \'\u53d1\u5e03\u89c4\u5219\'" class="anchor">#</a></h2><p>\u540c <code>@angular/*</code> \u7c7b\u4f3c\uff0c<code>@delon/*</code> \u7c7b\u5e93\u7684\u7248\u672c\u53f7\u5728\u6bcf\u4e00\u4e2a\u8fed\u4ee3\u65f6\uff0c\u4e0d\u7ba1\u67d0\u7c7b\u5e93\u662f\u5426\u6709\u4fee\u6539\uff0c\u90fd\u4f1a\u7edf\u4e00\u4e2a\u7248\u672c\u53f7 (<a target="_blank" href="https://www.npmjs.com/package/@delon/theme" data-url="https://www.npmjs.com/package/@delon/theme"><img src="https://img.shields.io/npm/v/@delon/theme.svg" alt="NPM version" /></a>) \u3002</p><p>\u540c\u65f6\u6309\u4ee5\u4e0b\u53d1\u5e03\u89c4\u5219\u53ca\u66f4\u65b0\u7248\u672c\u53f7\u8bf4\u660e\uff1a</p><ul><li><p><code>@delon</code> \u4f5c\u4e3a\u57fa\u7840\u5efa\u8bbe\u7c7b\u5e93\uff0c\u5728\u66f4\u65b0\u9891\u7387\u4e0a\u4f1a\u7565\u9ad8\uff0c\u4e00\u822c\u4e00\u5468\u81f3\u5c11\u66f4\u65b0\u4e00\u6b21</p></li><li><p>\u5e26\u6709 <strong>BREAKING CHANGES</strong> \u81f3\u5c11\u63d0\u5347\u4e00\u4e2a\u6b21\u7248\u672c\u53f7</p></li><li><p><a target="_blank" href="https://github.com/cipchk/ng-alain/releases" data-url="https://github.com/cipchk/ng-alain/releases">\u66f4\u65b0\u65e5\u5fd7</a></p></li></ul><h2 id="\u5982\u4f55\u5347\u7ea7\uff1f">\u5982\u4f55\u5347\u7ea7\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u5347\u7ea7\uff1f\'" class="anchor">#</a></h2><h3 id="\u65b9\u5f0f\u4e00\uff1a\u4fee\u6539\u7248\u672c\u53f7">\u65b9\u5f0f\u4e00\uff1a\u4fee\u6539\u7248\u672c\u53f7<a onclick="window.location.hash = \'\u65b9\u5f0f\u4e00\uff1a\u4fee\u6539\u7248\u672c\u53f7\'" class="anchor">#</a></h3><p>\u4fee\u6539 <code>package.json</code> \u6240\u6709 <code>@delon/</code> \u5f00\u5934\u7684\u7c7b\u5e93\u7248\u672c\u53f7\u4e3a\u6700\u65b0\u7248\u672c\u53f7\uff1a</p><pre class="hljs language-null"><code>"@delon/theme": "^0.7.1"</code></pre><p>\u5c06 <code>^0.7.1</code> \u66ff\u6362\u6210\u6700\u65b0\u7248\u672c\u53f7\u3002</p><p>\u6700\u540e\uff0c\u91cd\u65b0\u5b89\u88c5\u4f9d\u8d56\u5305\u3002</p><pre class="hljs language-bash"><code>$ npm install</code></pre><blockquote><p>\u9047\u5230\u95ee\u9898\u8bf7\u9605\u8bfb <a href="/cli/faq" data-url="/cli/faq">\u5e38\u89c1\u95ee\u9898</a></p></blockquote><p>\u5982\u679c\u7f51\u7edc\u72b6\u51b5\u4e0d\u4f73\uff0c\u53ef\u4ee5\u4f7f\u7528 <a target="_blank" href="https://www.npmjs.com/package/nrm" data-url="https://www.npmjs.com/package/nrm">nrm</a> \u5e76\u5207\u6362\u56fd\u5185NPM\u955c\u50cf\u8fdb\u884c\u52a0\u901f\u3002</p><h3 id="\u65b9\u5f0f\u4e8c\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93">\u65b9\u5f0f\u4e8c\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93<a onclick="window.location.hash = \'\u65b9\u5f0f\u4e8c\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93\'" class="anchor">#</a></h3><p>\u811a\u624b\u67b6\u5728 <code>package.json</code> \u91cc\u591a\u6570\u7c7b\u5e93\u90fd\u662f\u4f7f\u7528\u5bbd\u677e\u7684\u7248\u672c\u53f7\uff0c\u4f8b\u5982\uff1a</p><p><code>^0.1.0</code> \u5e26\u6709 <code>^</code> \u7b26\u53f7\u8868\u793a\u4f7f\u7528\u6700\u65b0\u6b21\u7248\u672c\u53f7\uff0c\u56e0\u6b64\uff0c<code>0.7.0</code> \u4e5f\u662f\u8be5\u8303\u56f4\u4e4b\u5217\u3002</p><p>\u8981\u60f3\u91c7\u7528\u8fd9\u79cd\u66f4\u65b0\u65b9\u5f0f\u9700\u8981\u6309\u4ee5\u4e0b\u6b65\u9aa4\u8fdb\u884c\uff1a</p><ul><li><p>\u79fb\u9664 <code>node_modules</code> \u6587\u4ef6\u5939\u53ca <code>package-lock.json</code> \u6587\u4ef6</p></li><li><p>\u6267\u884c <code>npm install</code></p></li></ul><p><strong>\u6ce8\u610f\uff1a</strong> \u8fd9\u79cd\u65b9\u5f0f\u4f1a\u5bf9\u6240\u6709\u7c7b\u5e93\u6309\u6bd4\u8f83\u65b0\u7684\u7248\u672c\u5b89\u88c5\uff0c\u4f46\u6709\u53ef\u80fd\u4f1a\u5bfc\u81f4\u7531\u4e8e\u7b2c\u4e09\u65b9\u7c7b\u578b\u7684\u7834\u574f\u6027\u53d8\u66f4\u4f1a\u5bfc\u81f4\u4e00\u4e9b\u4e0d\u5fc5\u8981\u7684\u9ebb\u70e6\u3002</p></article>',meta:{order:80,title:{"en-US":"Upgrade scaffold","zh-CN":"\u5347\u7ea7\u811a\u624b\u67b6"},type:"Dev"},toc:[{href:"#\u53d1\u5e03\u89c4\u5219",title:"\u53d1\u5e03\u89c4\u5219",h:2},{href:"#\u5982\u4f55\u5347\u7ea7\uff1f",title:"\u5982\u4f55\u5347\u7ea7\uff1f",h:2},{href:"#\u65b9\u5f0f\u4e00\uff1a\u4fee\u6539\u7248\u672c\u53f7",title:"\u65b9\u5f0f\u4e00\uff1a\u4fee\u6539\u7248\u672c\u53f7",h:3},{href:"#\u65b9\u5f0f\u4e8c\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",title:"\u65b9\u5f0f\u4e8c\uff1a\u66f4\u65b0\u6240\u6709\u7c7b\u5e93",h:3}]}},demo:!1},this.codes=[]},F=function(){this.item={cols:1,urls:{"zh-CN":"docs/use-components-alone.md"},content:{"zh-CN":{content:'<article><p>ng-alain \u811a\u624b\u67b6\u5185\u63d0\u4f9b\u4e86\u4e00\u5957\u9ed8\u8ba4\u4e1a\u52a1\u7ec4\u4ef6\uff0c\u8fd9\u4e9b\u7ec4\u4ef6\u62bd\u8c61\u4e86\u63a7\u5236\u53f0\u4e1a\u52a1\u4e2d\u7684\u4e00\u4e9b\u5e38\u89c1\u533a\u5757\u3002\u6211\u4eec\u5c06\u6301\u7eed\u7ef4\u62a4\u548c\u8fed\u4ee3\u8fd9\u4e9b\u7ec4\u4ef6\uff0c\u4e3a\u4e2d\u540e\u53f0\u4e1a\u52a1\u63d0\u4f9b\u6bd4 Ant Design \u57fa\u7840\u7ec4\u4ef6\u66f4\u9ad8\u7ea7\u522b\u7684\u62bd\u8c61\u3002</p><h2 id="\u5982\u4f55\u4f7f\u7528">\u5982\u4f55\u4f7f\u7528<a onclick="window.location.hash = \'\u5982\u4f55\u4f7f\u7528\'" class="anchor">#</a></h2><p>ng-alain \u811a\u624b\u67b6\u5185\u7528\u5230\u7684\u7ec4\u4ef6\u5206\u4e3a\uff1a</p><ul><li><p><a target="_blank" href="//ng-zorro.github.io" data-url="//ng-zorro.github.io">ng-zorro-antd</a> \u7ec4\u4ef6</p></li><li><p><a href="/components" data-url="/components">@delon/abc</a> \u7ec4\u4ef6</p></li></ul><p>\u8fd9\u4e9b\u7ec4\u4ef6\u90fd\u662f\u72ec\u7acb\u53d1\u5e03\u5728 Npm \u4e0a\u9762\uff0c\u56e0\u6b64\u4f60\u90fd\u53ef\u4ee5\u5355\u72ec\u53bb\u4f7f\u7528\u5b83\u4eec\uff1a</p><pre class="hljs language-$1"><code>import { NgZorroAntdModule } from \'ng-zorro-antd\';\nimport { AlainABCModule } from \'@delon/abc\';</code></pre><p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b ng-alain \u8fd9\u4e09\u79cd\u7ec4\u4ef6\u90fd\u5168\u90e8\u5bfc\u5165\u8fdb\u6765\uff0c\u4f60\u53ef\u4ee5\u6839\u636e\u4f60\u6240\u9700\u8981\u6309\u9700\u5bfc\u5165\u76f8\u5e94\u7684\u6a21\u5757\u3002</p><h3 id="\u5982\u4f55\u5220\u9664\u5462\uff1f">\u5982\u4f55\u5220\u9664\u5462\uff1f<a onclick="window.location.hash = \'\u5982\u4f55\u5220\u9664\u5462\uff1f\'" class="anchor">#</a></h3><p>\u900f\u8fc7 <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/delon.module.ts" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/delon.module.ts">delon.module.ts</a> \u67e5\u627e\u76f8\u5e94\u6a21\u5757\u540d\u79f0\uff0c\u5e76\u5c06\u5176\u79fb\u9664\u5373\u53ef\u3002</p><blockquote><p><code>reuse-tab</code> \u7ec4\u4ef6\u9664\u4e86\u6a21\u5757\u5bfc\u5165\u3001\u5bfc\u51fa\u4ee5\u5916\uff0c\u8fd8\u5728 <a target="_blank" href="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/default/default.component.html" data-url="https://github.com/cipchk/ng-alain/blob/master/src/app/layout/default/default.component.html">default.component.html</a> \u4e5f\u6709\u76f8\u5e94\u7ec4\u4ef6\u70b9\u4f4d\u7b26\u3002</p></blockquote><h2 id="\u6587\u6863\u548c\u53cd\u9988">\u6587\u6863\u548c\u53cd\u9988<a onclick="window.location.hash = \'\u6587\u6863\u548c\u53cd\u9988\'" class="anchor">#</a></h2><p>\u4f60\u53ef\u4ee5\u5728 <a href="/components" data-url="/components">\u7ec4\u4ef6\u9875\u9762</a> \u627e\u5230\u6240\u6709\u7684\u4e1a\u52a1\u7ec4\u4ef6\uff0c\u4ee5\u53ca\u76f8\u5173\u7684\u6f14\u793a\u548c API \u6587\u6863\u3002</p><p>\u7ec4\u4ef6\u4f1a\u968f\u7740\u811a\u624b\u67b6\u7684\u66f4\u65b0\u800c\u4e0d\u65ad\u8fed\u4ee3\uff0c\u6709\u4efb\u4f55\u95ee\u9898\u548c\u9700\u6c42\u53ef\u4ee5\u53cd\u9988\u5230 <a target="_blank" href="https://github.com/cipchk/ng-alain/issues" data-url="https://github.com/cipchk/ng-alain/issues">\u8fd9\u91cc</a>\u3002</p><ul><li><p>\u6700\u65b0\u7248\u672c\uff1a<a target="_blank" href="//www.npmjs.com/package/@delon/abc" data-url="//www.npmjs.com/package/@delon/abc"><img src="//img.shields.io/npm/v/@delon/abc.svg?style=flat-square" alt="@delon/abc" /></a></p></li><li><p><a target="_blank" href="https://github.com/cipchk/ng-alain/releases" data-url="https://github.com/cipchk/ng-alain/releases">\u66f4\u65b0\u65e5\u5fd7</a></p></li></ul></article>',meta:{order:100,title:{"en-US":"Use ABC Components Alone","zh-CN":"\u72ec\u7acb\u4f7f\u7528 ABC \u7ec4\u4ef6"},type:"Advance"},toc:[{href:"#\u5982\u4f55\u4f7f\u7528",title:"\u5982\u4f55\u4f7f\u7528",h:2},{href:"#\u5982\u4f55\u5220\u9664\u5462\uff1f",title:"\u5982\u4f55\u5220\u9664\u5462\uff1f",h:3},{href:"#\u6587\u6863\u548c\u53cd\u9988",title:"\u6587\u6863\u548c\u53cd\u9988",h:2}]}},demo:!1},this.codes=[]},R=function(){},P=a("pMnS"),I=a("ebDo"),E=a("GYi0"),D=a("R6D3"),T=a("WP5L"),G=a("71F0"),O=a("fE+l"),q=a("0RMT"),L=a("QcbP"),H=a("0D9X"),U=a("SpJI"),B=a("hBP+"),K=a("QPFe"),W=a("RdGh"),$=a("D9vs"),Y=a("DyZ0"),J=a("TY3c"),V=a("u+Cy"),Z=a("8+8K"),Q=a("YVZs"),X=a("F/j7"),ee=a("/EOF"),le=a("ZKYL"),ae=a("SZk1"),te=a("5eO6"),oe=a("p+4O"),ce=a("bLMo"),ie=a("ieBQ"),ne=a("651C"),pe=a("AKjh"),se=a("Z4UC"),de=a("ZYCi"),he=a("ZYjt"),re=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ue(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var ge=t.tb("app-docs-acl",c,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-acl",[],null,null,null,ue,re)),t.wb(1,49152,null,0,c,[],null,null)],null,null)},{},{},[]),me=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function be(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var ke=t.tb("app-docs-architecture",i,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-architecture",[],null,null,null,be,me)),t.wb(1,49152,null,0,i,[],null,null)],null,null)},{},{},[]),fe=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function we(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var _e=t.tb("app-docs-auth",n,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-auth",[],null,null,null,we,fe)),t.wb(1,49152,null,0,n,[],null,null)],null,null)},{},{},[]),ve=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ye(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var xe=t.tb("app-docs-cache",p,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-cache",[],null,null,null,ye,ve)),t.wb(1,49152,null,0,p,[],null,null)],null,null)},{},{},[]),Ce=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ze(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Ae=t.tb("app-docs-changelog-81",s,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-changelog-81",[],null,null,null,ze,Ce)),t.wb(1,49152,null,0,s,[],null,null)],null,null)},{},{},[]),je=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Me(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Ne=t.tb("app-docs-changelog-v6",d,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-changelog-v6",[],null,null,null,Me,je)),t.wb(1,49152,null,0,d,[],null,null)],null,null)},{},{},[]),Se=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Fe(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Re=t.tb("app-docs-changelog",h,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-changelog",[],null,null,null,Fe,Se)),t.wb(1,49152,null,0,h,[],null,null)],null,null)},{},{},[]),Pe=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Ie(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Ee=t.tb("app-docs-cli",r,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-cli",[],null,null,null,Ie,Pe)),t.wb(1,49152,null,0,r,[],null,null)],null,null)},{},{},[]),De=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Te(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Ge=t.tb("app-docs-contributing",u,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-contributing",[],null,null,null,Te,De)),t.wb(1,49152,null,0,u,[],null,null)],null,null)},{},{},[]),Oe=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function qe(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Le=t.tb("app-docs-deploy",g,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-deploy",[],null,null,null,qe,Oe)),t.wb(1,49152,null,0,g,[],null,null)],null,null)},{},{},[]),He=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Ue(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Be=t.tb("app-docs-faq",m,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-faq",[],null,null,null,Ue,He)),t.wb(1,49152,null,0,m,[],null,null)],null,null)},{},{},[]),Ke=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function We(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var $e=t.tb("app-docs-getting-started",b,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-getting-started",[],null,null,null,We,Ke)),t.wb(1,49152,null,0,b,[],null,null)],null,null)},{},{},[]),Ye=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Je(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Ve=t.tb("app-docs-graph",k,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-graph",[],null,null,null,Je,Ye)),t.wb(1,49152,null,0,k,[],null,null)],null,null)},{},{},[]),Ze=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Qe(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Xe=t.tb("app-docs-how-to-start",f,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-how-to-start",[],null,null,null,Qe,Ze)),t.wb(1,49152,null,0,f,[],null,null)],null,null)},{},{},[]),el=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ll(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var al=t.tb("app-docs-i18n",w,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-i18n",[],null,null,null,ll,el)),t.wb(1,49152,null,0,w,[],null,null)],null,null)},{},{},[]),tl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ol(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var cl=t.tb("app-docs-import",_,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-import",[],null,null,null,ol,tl)),t.wb(1,49152,null,0,_,[],null,null)],null,null)},{},{},[]),il=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function nl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var pl=t.tb("app-docs-mock",v,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-mock",[],null,null,null,nl,il)),t.wb(1,49152,null,0,v,[],null,null)],null,null)},{},{},[]),sl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function dl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var hl=t.tb("app-docs-module",y,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-module",[],null,null,null,dl,sl)),t.wb(1,49152,null,0,y,[],null,null)],null,null)},{},{},[]),rl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function ul(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var gl=t.tb("app-docs-new-component",x,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-new-component",[],null,null,null,ul,rl)),t.wb(1,49152,null,0,x,[],null,null)],null,null)},{},{},[]),ml=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function bl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var kl=t.tb("app-docs-new-page",C,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-new-page",[],null,null,null,bl,ml)),t.wb(1,49152,null,0,C,[],null,null)],null,null)},{},{},[]),fl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function wl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var _l=t.tb("app-docs-performance",z,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-performance",[],null,null,null,wl,fl)),t.wb(1,49152,null,0,z,[],null,null)],null,null)},{},{},[]),vl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function yl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var xl=t.tb("app-docs-scaffold",A,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-scaffold",[],null,null,null,yl,vl)),t.wb(1,49152,null,0,A,[],null,null)],null,null)},{},{},[]),Cl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function zl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Al=t.tb("app-docs-server",j,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-server",[],null,null,null,zl,Cl)),t.wb(1,49152,null,0,j,[],null,null)],null,null)},{},{},[]),jl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Ml(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Nl=t.tb("app-docs-style-guide",M,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-style-guide",[],null,null,null,Ml,jl)),t.wb(1,49152,null,0,M,[],null,null)],null,null)},{},{},[]),Sl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Fl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Rl=t.tb("app-docs-theme",N,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-theme",[],null,null,null,Fl,Sl)),t.wb(1,49152,null,0,N,[],null,null)],null,null)},{},{},[]),Pl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Il(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var El=t.tb("app-docs-upgrade",S,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-upgrade",[],null,null,null,Il,Pl)),t.wb(1,49152,null,0,S,[],null,null)],null,null)},{},{},[]),Dl=t.vb({encapsulation:0,styles:["[_nghost-%COMP%] { display: block }"],data:{}});function Tl(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs",[],null,null,null,ie.b,ie.a)),t.wb(1,245760,null,0,ne.a,[pe.a,se.a,de.o,he.c],{codes:[0,"codes"],item:[1,"item"]},null)],function(e,l){var a=l.component;e(l,1,0,a.codes,a.item)},null)}var Gl=t.tb("app-docs-use-components-alone",F,function(e){return t.Rb(0,[(e()(),t.xb(0,0,null,null,1,"app-docs-use-components-alone",[],null,null,null,Tl,Dl)),t.wb(1,49152,null,0,F,[],null,null)],null,null)},{},{},[]),Ol=a("Ip0R"),ql=a("gIcY"),Ll=a("t/Na"),Hl=a("M2Lx"),Ul=a("6Cds"),Bl=a("eDkP"),Kl=a("Fzqc"),Wl=a("jE6/"),$l=a("Bob9"),Yl=a("Ybye"),Jl=a("dWZg"),Vl=a("4c35"),Zl=a("qAlS"),Ql=a("9J0+"),Xl=a("CGSU"),ea=a("5CFV"),la=a("GTZx"),aa=a("hS58"),ta=a("XZsx"),oa=a("+ndR"),ca=a("EWQH"),ia=a("HjCm"),na=a("aq9g"),pa=a("7Dpl"),sa=a("ekmu"),da=a("vjj7"),ha=a("qdwt"),ra=a("l/Xz"),ua=a("sRo1"),ga=a("mX2v"),ma=a("BQzg"),ba=a("hDaA"),ka=a("YQXl"),fa=a("M3JP"),wa=a("WNQ9"),_a=a("5Oon"),va=a("lM9c"),ya=a("OSVY"),xa=a("MNSj"),Ca=a("MZBU"),za=a("ev4S"),Aa=a("G1y0"),ja=a("KmAc"),Ma=a("zGKZ"),Na=a("xly9"),Sa=a("u7PB"),Fa=a("1Ry3"),Ra=a("4+vV"),Pa=a("ZgPA"),Ia=a("37MH"),Ea=a("fZ1T"),Da=a("iwTp"),Ta=a("mSU2"),Ga=a("4vQL"),Oa=a("iTTW"),qa=a("gQlp"),La=a("oCVe"),Ha=a("XYAa"),Ua=a("qT06"),Ba=a("A7o+"),Ka=a("gMdr"),Wa=a("AYLd"),$a=a("ADoS"),Ya=a("slxf");a.d(l,"DocsModuleNgFactory",function(){return Ja});var Ja=t.ub(R,[],function(e){return t.Eb([t.Fb(512,t.k,t.ib,[[8,[P.a,I.uc,I.vc,I.wc,I.xc,I.yc,I.zc,I.Ac,I.Bc,E.a,D.a,T.a,G.a,O.a,q.a,L.a,H.a,U.a,B.a,K.a,W.a,$.a,Y.a,J.a,V.a,Z.a,Q.a,X.a,ee.a,le.a,ae.a,te.a,oe.a,ce.a,ge,ke,_e,xe,Ae,Ne,Re,Ee,Ge,Le,Be,$e,Ve,Xe,al,cl,pl,hl,gl,kl,_l,xl,Al,Nl,Rl,El,Gl]],[3,t.k],t.A]),t.Fb(4608,Ol.q,Ol.p,[t.x,[2,Ol.D]]),t.Fb(4608,ql.w,ql.w,[]),t.Fb(4608,ql.d,ql.d,[]),t.Fb(4608,Ll.m,Ll.s,[Ol.e,t.E,Ll.q]),t.Fb(4608,Ll.t,Ll.t,[Ll.m,Ll.r]),t.Fb(5120,Ll.a,function(e){return[e]},[Ll.t]),t.Fb(4608,Ll.p,Ll.p,[]),t.Fb(6144,Ll.n,null,[Ll.p]),t.Fb(4608,Ll.l,Ll.l,[Ll.n]),t.Fb(6144,Ll.b,null,[Ll.l]),t.Fb(4608,Ll.g,Ll.o,[Ll.b,t.t]),t.Fb(4608,Ll.c,Ll.c,[Ll.g]),t.Fb(4608,Hl.c,Hl.c,[]),t.Fb(5120,Ul.Fe,Ul.He,[[3,Ul.Fe],Ul.Ge]),t.Fb(4608,Ol.f,Ol.f,[t.x]),t.Fb(5120,Ul.Ce,Ul.De,[[3,Ul.Ce],Ul.Ee,Ul.Fe,Ol.f]),t.Fb(4608,Bl.d,Bl.d,[Bl.k,Bl.f,t.k,Bl.i,Bl.g,t.t,t.C,Ol.e,Kl.b]),t.Fb(5120,Bl.l,Bl.m,[Bl.d]),t.Fb(5120,Ul.Y,Ul.Z,[Ol.e,[3,Ul.Y]]),t.Fb(4608,Ul.mb,Ul.mb,[]),t.Fb(4608,Ul.Gb,Ul.Gb,[]),t.Fb(4608,Ul.od,Ul.od,[Bl.d]),t.Fb(4608,Ul.Td,Ul.Td,[Bl.d,t.t,t.k,t.g]),t.Fb(4608,Ul.ae,Ul.ae,[Bl.d,t.t,t.k,t.g]),t.Fb(4608,Ul.ke,Ul.ke,[[3,Ul.ke]]),t.Fb(4608,Ul.me,Ul.me,[Bl.d,Ul.Fe,Ul.ke]),t.Fb(4608,Wl.c,Wl.c,[]),t.Fb(4608,$l.d,$l.d,[Ol.e]),t.Fb(4608,Yl.a,Yl.a,[Ul.f]),t.Fb(1073742336,Ol.c,Ol.c,[]),t.Fb(1073742336,ql.u,ql.u,[]),t.Fb(1073742336,ql.h,ql.h,[]),t.Fb(1073742336,de.s,de.s,[[2,de.y],[2,de.o]]),t.Fb(1073742336,ql.r,ql.r,[]),t.Fb(1073742336,Ll.e,Ll.e,[]),t.Fb(1073742336,Ll.d,Ll.d,[]),t.Fb(1073742336,Hl.d,Hl.d,[]),t.Fb(1073742336,Jl.b,Jl.b,[]),t.Fb(1073742336,Ul.Dd,Ul.Dd,[]),t.Fb(1073742336,Ul.xe,Ul.xe,[]),t.Fb(1073742336,Ul.k,Ul.k,[]),t.Fb(1073742336,Ul.n,Ul.n,[]),t.Fb(1073742336,Ul.m,Ul.m,[]),t.Fb(1073742336,Ul.p,Ul.p,[]),t.Fb(1073742336,Kl.a,Kl.a,[]),t.Fb(1073742336,Vl.e,Vl.e,[]),t.Fb(1073742336,Zl.a,Zl.a,[]),t.Fb(1073742336,Bl.h,Bl.h,[]),t.Fb(1073742336,Ul.t,Ul.t,[]),t.Fb(1073742336,Ul.Ae,Ul.Ae,[]),t.Fb(1073742336,Ul.D,Ul.D,[]),t.Fb(1073742336,Ul.I,Ul.I,[]),t.Fb(1073742336,Ul.K,Ul.K,[]),t.Fb(1073742336,Ul.T,Ul.T,[]),t.Fb(1073742336,Ul.bb,Ul.bb,[]),t.Fb(1073742336,Ul.W,Ul.W,[]),t.Fb(1073742336,Ul.db,Ul.db,[]),t.Fb(1073742336,Ul.fb,Ul.fb,[]),t.Fb(1073742336,Ul.nb,Ul.nb,[]),t.Fb(1073742336,Ul.qb,Ul.qb,[]),t.Fb(1073742336,Ul.sb,Ul.sb,[]),t.Fb(1073742336,Ul.vb,Ul.vb,[]),t.Fb(1073742336,Ul.yb,Ul.yb,[]),t.Fb(1073742336,Ul.Cb,Ul.Cb,[]),t.Fb(1073742336,Ul.Lb,Ul.Lb,[]),t.Fb(1073742336,Ul.Eb,Ul.Eb,[]),t.Fb(1073742336,Ul.Ob,Ul.Ob,[]),t.Fb(1073742336,Ul.Qb,Ul.Qb,[]),t.Fb(1073742336,Ul.Sb,Ul.Sb,[]),t.Fb(1073742336,Ul.Ub,Ul.Ub,[]),t.Fb(1073742336,Ul.Wb,Ul.Wb,[]),t.Fb(1073742336,Ul.Yb,Ul.Yb,[]),t.Fb(1073742336,Ul.fc,Ul.fc,[]),t.Fb(1073742336,Ul.kc,Ul.kc,[]),t.Fb(1073742336,Ul.mc,Ul.mc,[]),t.Fb(1073742336,Ul.pc,Ul.pc,[]),t.Fb(1073742336,Ul.tc,Ul.tc,[]),t.Fb(1073742336,Ul.vc,Ul.vc,[]),t.Fb(1073742336,Ul.yc,Ul.yc,[]),t.Fb(1073742336,Ul.Jc,Ul.Jc,[]),t.Fb(1073742336,Ul.Ic,Ul.Ic,[]),t.Fb(1073742336,Ul.Hc,Ul.Hc,[]),t.Fb(1073742336,Ul.jd,Ul.jd,[]),t.Fb(1073742336,Ul.ld,Ul.ld,[]),t.Fb(1073742336,Ul.pd,Ul.pd,[]),t.Fb(1073742336,Ul.yd,Ul.yd,[]),t.Fb(1073742336,Ul.Cd,Ul.Cd,[]),t.Fb(1073742336,Ul.Hd,Ul.Hd,[]),t.Fb(1073742336,Ul.Md,Ul.Md,[]),t.Fb(1073742336,Ul.Od,Ul.Od,[]),t.Fb(1073742336,Ul.Ud,Ul.Ud,[]),t.Fb(1073742336,Ul.be,Ul.be,[]),t.Fb(1073742336,Ul.ee,Ul.ee,[]),t.Fb(1073742336,Ul.he,Ul.he,[]),t.Fb(1073742336,Ul.ne,Ul.ne,[]),t.Fb(1073742336,Ul.pe,Ul.pe,[]),t.Fb(1073742336,Ul.re,Ul.re,[]),t.Fb(1073742336,Ul.ve,Ul.ve,[]),t.Fb(1073742336,Ul.ye,Ul.ye,[]),t.Fb(1073742336,Ul.a,Ul.a,[]),t.Fb(1073742336,Ql.a,Ql.a,[Ul.c]),t.Fb(1073742336,Xl.a,Xl.a,[]),t.Fb(1073742336,ea.a,ea.a,[]),t.Fb(1073742336,la.a,la.a,[]),t.Fb(1073742336,aa.a,aa.a,[]),t.Fb(1073742336,ta.a,ta.a,[]),t.Fb(1073742336,oa.a,oa.a,[]),t.Fb(1073742336,ca.a,ca.a,[]),t.Fb(1073742336,ia.a,ia.a,[]),t.Fb(1073742336,na.a,na.a,[]),t.Fb(1073742336,pa.a,pa.a,[]),t.Fb(1073742336,sa.a,sa.a,[]),t.Fb(1073742336,da.a,da.a,[]),t.Fb(1073742336,ha.a,ha.a,[]),t.Fb(1073742336,ra.a,ra.a,[]),t.Fb(1073742336,ua.a,ua.a,[]),t.Fb(1073742336,ga.a,ga.a,[]),t.Fb(1073742336,ma.a,ma.a,[]),t.Fb(1073742336,ba.a,ba.a,[]),t.Fb(1073742336,Wl.b,Wl.b,[]),t.Fb(1073742336,ka.a,ka.a,[]),t.Fb(1073742336,fa.a,fa.a,[]),t.Fb(1073742336,wa.a,wa.a,[]),t.Fb(1073742336,_a.a,_a.a,[]),t.Fb(1073742336,va.a,va.a,[]),t.Fb(1073742336,ya.a,ya.a,[]),t.Fb(1073742336,xa.a,xa.a,[]),t.Fb(1073742336,Ca.a,Ca.a,[]),t.Fb(1073742336,za.a,za.a,[]),t.Fb(1073742336,Aa.a,Aa.a,[]),t.Fb(1073742336,ja.a,ja.a,[]),t.Fb(1073742336,Ma.a,Ma.a,[]),t.Fb(1073742336,Na.a,Na.a,[]),t.Fb(1073742336,Sa.a,Sa.a,[]),t.Fb(1073742336,Fa.a,Fa.a,[]),t.Fb(1073742336,Ra.a,Ra.a,[]),t.Fb(1073742336,Pa.a,Pa.a,[]),t.Fb(1073742336,Ia.a,Ia.a,[]),t.Fb(1073742336,Ea.a,Ea.a,[]),t.Fb(1073742336,Da.a,Da.a,[]),t.Fb(1073742336,Ta.a,Ta.a,[]),t.Fb(1073742336,Ga.a,Ga.a,[]),t.Fb(1073742336,Oa.a,Oa.a,[]),t.Fb(1073742336,qa.a,qa.a,[]),t.Fb(1073742336,La.a,La.a,[]),t.Fb(1073742336,Ha.a,Ha.a,[]),t.Fb(1073742336,Ua.a,Ua.a,[]),t.Fb(1073742336,Ba.h,Ba.h,[]),t.Fb(1073742336,Ka.b,Ka.b,[]),t.Fb(1073742336,Wa.a,Wa.a,[]),t.Fb(1073742336,$l.c,$l.c,[]),t.Fb(1073742336,$a.c,$a.c,[]),t.Fb(1073742336,Ya.a,Ya.a,[]),t.Fb(1073742336,R,R,[]),t.Fb(256,Ll.q,"XSRF-TOKEN",[]),t.Fb(256,Ll.r,"X-XSRF-TOKEN",[]),t.Fb(256,Ul.Ge,!1,[]),t.Fb(256,Ul.Ee,void 0,[]),t.Fb(256,Ul.Qd,{nzDuration:3e3,nzAnimate:!0,nzPauseOnHover:!0,nzMaxStack:7},[]),t.Fb(256,Ul.Xd,{nzTop:"24px",nzBottom:"24px",nzPlacement:"topRight",nzDuration:4500,nzMaxStack:7,nzPauseOnHover:!0,nzAnimate:!0},[]),t.Fb(1024,de.m,function(){return[[{path:"",component:o.a,children:[{path:"",redirectTo:"getting-started",pathMatch:"full"},{path:"acl",component:c},{path:"architecture",component:i},{path:"auth",component:n},{path:"cache",component:p},{path:"changelog-81",component:s},{path:"changelog-v6",component:d},{path:"changelog",component:h},{path:"cli",component:r},{path:"contributing",component:u},{path:"deploy",component:g},{path:"faq",component:m},{path:"getting-started",component:b},{path:"graph",component:k},{path:"how-to-start",component:f},{path:"i18n",component:w},{path:"import",component:_},{path:"mock",component:v},{path:"module",component:y},{path:"new-component",component:x},{path:"new-page",component:C},{path:"performance",component:z},{path:"scaffold",component:A},{path:"server",component:j},{path:"style-guide",component:M},{path:"theme",component:N},{path:"upgrade",component:S},{path:"use-components-alone",component:F}]}]]},[])])})}}]);