{"id":39233,"date":"2023-02-03T15:04:42","date_gmt":"2022-12-04T07:58:20","guid":{"rendered":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/"},"modified":"2024-04-29T12:56:33","modified_gmt":"2024-04-29T04:56:33","slug":"%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/","title":{"rendered":"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011"},"content":{"rendered":"<p>\u4e3a\u4e86\u5b66\u4e60Angular2\u7684\u8def\u7531\u3002<br \/>\n\uff08\u5ffd\u7565\u4e86\u4e0e\u8def\u7531\u5904\u7406\u65e0\u5173\u7684\u90e8\u5206\u5904\u7406\uff0c\u8bf7\u4e8b\u5148\u8c05\u89e3\u3002\uff09<\/p>\n<h2>\u73af\u5883<\/h2>\n<h3>package.json \u6587\u4ef6<\/h3>\n<pre class=\"post-pre\"><code><span class=\"p\">{<\/span>\r\n  <span class=\"nl\">\"name\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"angular\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"version\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"1.0.0\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"description\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"main\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"index.js\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"scripts\"<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nl\">\"test\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"echo <\/span><span class=\"se\">\\\"<\/span><span class=\"s2\">Error: no test specified<\/span><span class=\"se\">\\\"<\/span><span class=\"s2\"> &amp;&amp; exit 1\"<\/span>\r\n  <span class=\"p\">},<\/span>\r\n  <span class=\"nl\">\"author\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"license\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"ISC\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"nl\">\"dependencies\"<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\r\n    <span class=\"nl\">\"angular2\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^2.0.0-beta.1\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"bootstrap\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^3.3.6\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"es6-promise\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^3.0.2\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"es6-shim\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^0.33.13\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"jquery\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^2.2.0\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"reflect-metadata\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^0.1.2\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"rxjs\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^5.0.0-beta.0\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"systemjs\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^0.19.17\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nl\">\"zone.js\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"^0.5.10\"<\/span>\r\n  <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>tsconfig.json \u7684\u91cd\u65b0\u63cf\u8ff0<\/h3>\n<pre class=\"post-pre\"><code><span class=\"p\">{<\/span>\r\n    <span class=\"nl\">\"compilerOptions\"<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\r\n        <span class=\"nl\">\"emitDecoratorMetadata\"<\/span><span class=\"p\">:<\/span> <span class=\"kc\">true<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"experimentalDecorators\"<\/span><span class=\"p\">:<\/span> <span class=\"kc\">true<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"module\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"commonjs\"<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"moduleResolution\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"node\"<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"target\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"es5\"<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"noImplicitAny\"<\/span><span class=\"p\">:<\/span> <span class=\"kc\">true<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"outDir\"<\/span><span class=\"p\">:<\/span> <span class=\"s2\">\"assets\/scripts\"<\/span><span class=\"p\">,<\/span>\r\n        <span class=\"nl\">\"sourceMap\"<\/span><span class=\"p\">:<\/span> <span class=\"kc\">false<\/span>\r\n    <span class=\"p\">},<\/span>\r\n    <span class=\"nl\">\"exclude\"<\/span><span class=\"p\">:<\/span> <span class=\"p\">[<\/span>\r\n        <span class=\"s2\">\"node_modules\"<\/span>\r\n    <span class=\"p\">],<\/span>\r\n    <span class=\"nl\">\"files\"<\/span><span class=\"p\">:<\/span> <span class=\"p\">[<\/span>\r\n      <span class=\"s2\">\"typescript\/bootstrap\"<\/span>\r\n    <span class=\"p\">]<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h2>\u76ee\u5f55<\/h2>\n<ul class=\"post-ul\">\n<li style=\"list-style-type: none;\">\n<ul class=\"post-ul\">\/angular<\/ul>\n<\/li>\n<\/ul>\n<p>\/assets<\/p>\n<p>\/scripts<\/p>\n<p>about.component.js<br \/>\napp.component.js<br \/>\nbootstrap.js<br \/>\ncontact.component.js<br \/>\nhome.component.js<br \/>\nindex.js<br \/>\nnavbar.component.js<\/p>\n<p>\/styles<\/p>\n<p>navbar.css<\/p>\n<p>\/templates<\/p>\n<p>my-about.tmpl<br \/>\nmy-contact.tmpl<br \/>\nmy-home.tmpl<br \/>\nmy-navbar.tmpl<\/p>\n<p>\/coffee<\/p>\n<p>index.coffee<\/p>\n<p>\/jade<\/p>\n<p>index.jade<\/p>\n<p>\/typescript<\/p>\n<p>about.component.ts<br \/>\napp.component.ts<br \/>\nbootstrap.ts<br \/>\ncontact.component.ts<br \/>\nhome.component.ts<br \/>\nnavbar.component.ts<\/p>\n<p>index.html<br \/>\npackage.json<br \/>\ntsconfig.json<\/p>\n<h2>\u9996\u9875.html<\/h2>\n<h3>\u8bf7\u7528\u4e2d\u6587\u7ed9\u4ee5\u4e0b\u5185\u5bb9\u8fdb\u884c\u89e3\u91ca\u6216\u63cf\u8ff0\uff0c\u53ea\u9700\u8981\u63d0\u4f9b\u4e00\u79cd\u9009\u9879\uff1a<\/h3>\n<p>\u811a\u672c<\/p>\n<pre class=\"post-pre\"><code>doctype html\r\nhtml(lang=\"ja\")\r\n  head\r\n    base(href=\"\/angular\/index.html\")\r\n    meta(charaset=\"utf-8\")\r\n    meta(name=\"viewport\" content=\"width=device-width,initial-scale=1\")\r\n    link(rel=\"stylesheet\" href=\"node_modules\/bootstrap\/dist\/css\/bootstrap.min.css\")\r\n    link(rel=\"stylesheet\" href=\"assets\/styles\/navbar.css\")\r\n    title Angular Routing\r\n  body\r\n    my-app Loading ...\r\n    \/\/ for twitter-bootstrap\r\n    script(src=\"node_modules\/jquery\/dist\/jquery.min.js\")\r\n    script(src=\"node_modules\/bootstrap\/dist\/js\/bootstrap.min.js\")\r\n    \/\/ for Angular2\r\n    script(src=\"node_modules\/systemjs\/dist\/system.js\")\r\n    script(src=\"node_modules\/rxjs\/bundles\/Rx.min.js\")\r\n    script(src=\"node_modules\/angular2\/bundles\/angular2-polyfills.min.js\")\r\n    script(src=\"node_modules\/angular2\/bundles\/angular2.min.js\")\r\n    script(src=\"node_modules\/angular2\/bundles\/router.dev.js\")\r\n    script(src=\"assets\/scripts\/index.js\")\r\n<\/code><\/pre>\n<h3>\u8f6c\u8bd1<\/h3>\n<pre class=\"post-pre\"><code><span class=\"gp\">$<\/span> jade <span class=\"nt\">-P<\/span> jade\/index.jade <span class=\"nt\">-o<\/span> <span class=\"nb\">.<\/span>\r\n<\/code><\/pre>\n<h2>index.js -&gt; \u4e3b\u9875.js<\/h2>\n<h3>\u811a\u672c<\/h3>\n<pre class=\"post-pre\"><code><span class=\"nx\">appDir<\/span>   <span class=\"o\">=<\/span> <span class=\"s\">\"assets\/scripts\"<\/span>\r\n<span class=\"nx\">bootFile<\/span> <span class=\"o\">=<\/span> <span class=\"s\">\"bootstrap\"<\/span>\r\n\r\n<span class=\"nx\">System<\/span>\r\n  <span class=\"p\">.<\/span><span class=\"na\">config<\/span>\r\n    <span class=\"na\">packages<\/span> <span class=\"o\">:<\/span>\r\n      <span class=\"s\">\"<\/span><span class=\"si\">#{<\/span><span class=\"nx\">appDir<\/span><span class=\"si\">}<\/span><span class=\"s\">\"<\/span> <span class=\"o\">:<\/span>\r\n        <span class=\"na\">format<\/span>           <span class=\"o\">:<\/span> <span class=\"s\">\"cjs\"<\/span>\r\n        <span class=\"na\">defaultExtension<\/span> <span class=\"o\">:<\/span> <span class=\"s\">\"js\"<\/span>\r\n\r\n<span class=\"nx\">System<\/span>\r\n  <span class=\"p\">.<\/span><span class=\"na\">import<\/span> <span class=\"s\">\"<\/span><span class=\"si\">#{<\/span><span class=\"nx\">appDir<\/span><span class=\"si\">}<\/span><span class=\"s\">\/<\/span><span class=\"si\">#{<\/span><span class=\"nx\">bootFile<\/span><span class=\"si\">}<\/span><span class=\"s\">\"<\/span>\r\n<\/code><\/pre>\n<h3>\u8f6c\u8bd1 y\u00ec)<\/h3>\n<pre class=\"post-pre\"><code><span class=\"gp\">$<\/span> coffee <span class=\"nt\">-o<\/span> assets\/scripts <span class=\"nt\">-c<\/span> cafe\r\n<\/code><\/pre>\n<h2>TypeScript\u6587\u4ef6<\/h2>\n<h3>\u5f15\u5bfc\u7a0b\u5e8f.js<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">bootstrap<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/platform\/browser<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">AppComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/app.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"nx\">bootstrap<\/span><span class=\"p\">(<\/span><span class=\"nx\">AppComponent<\/span><span class=\"p\">);<\/span>\r\n<\/code><\/pre>\n<h3>app.component.ts \u6587\u4ef6<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Component<\/span><span class=\"p\">,<\/span> <span class=\"nx\">provide<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/core<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">RouteConfig<\/span><span class=\"p\">,<\/span> <span class=\"nx\">ROUTER_DIRECTIVES<\/span><span class=\"p\">,<\/span> <span class=\"nx\">ROUTER_PROVIDERS<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">LocationStrategy<\/span><span class=\"p\">,<\/span> <span class=\"nx\">HashLocationStrategy<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">NavbarComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/navbar.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">HomeComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/home.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">AboutComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/about.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">ContactComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/contact.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">TMPL_ROOT<\/span>    <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/angular\/assets\/templates<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">my-app<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">Component<\/span><span class=\"p\">({<\/span>\r\n  <span class=\"na\">selector<\/span>   <span class=\"p\">:<\/span> <span class=\"nx\">COMPONENT_ID<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">template<\/span>   <span class=\"p\">:<\/span> <span class=\"s2\">`\r\n    &lt;div class=\"container\"&gt;\r\n      &lt;my-navbar&gt;&lt;\/my-navbar&gt;\r\n      &lt;router-outlet&gt;&lt;\/router-outlet&gt;\r\n    &lt;\/div&gt;\r\n  `<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">directives<\/span> <span class=\"p\">:<\/span> <span class=\"p\">[<\/span><span class=\"nx\">NavbarComponent<\/span><span class=\"p\">,<\/span> <span class=\"nx\">ROUTER_DIRECTIVES<\/span><span class=\"p\">],<\/span>\r\n  <span class=\"na\">providers<\/span>  <span class=\"p\">:<\/span> <span class=\"p\">[<\/span>\r\n    <span class=\"nx\">ROUTER_PROVIDERS<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"nx\">provide<\/span><span class=\"p\">(<\/span><span class=\"nx\">LocationStrategy<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span><span class=\"na\">useClass<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">HashLocationStrategy<\/span><span class=\"p\">}),<\/span>\r\n  <span class=\"p\">]<\/span>\r\n<span class=\"p\">})<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">RouteConfig<\/span><span class=\"p\">([<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"na\">path<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/home<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">name<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">Home<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">component<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">HomeComponent<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">useAsDefault<\/span> <span class=\"p\">:<\/span> <span class=\"kc\">true<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"p\">},<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"na\">path<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/about<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">name<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">About<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">component<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">AboutComponent<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"p\">},<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"na\">path<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/contact<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">name<\/span>         <span class=\"p\">:<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">Contact<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n    <span class=\"na\">component<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">ContactComponent<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"p\">},<\/span>\r\n<span class=\"p\">])<\/span>\r\n\r\n<span class=\"k\">export<\/span> <span class=\"kd\">class<\/span> <span class=\"nx\">AppComponent<\/span> <span class=\"p\">{<\/span> <span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>\u5bfc\u822a\u680f\u7ec4\u4ef6.js<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Component<\/span><span class=\"p\">,<\/span> <span class=\"nx\">OnInit<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/core<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">ROUTER_DIRECTIVES<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">HomeComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/home.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">AboutComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/about.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">ContactComponent<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.\/contact.component<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">TMPL_ROOT<\/span>    <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/angular\/assets\/templates<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">my-navbar<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">Component<\/span><span class=\"p\">({<\/span>\r\n  <span class=\"na\">selector<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">COMPONENT_ID<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">templateUrl<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">TMPL_ROOT<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/<\/span><span class=\"dl\">\"<\/span> <span class=\"o\">+<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.tmpl<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">directives<\/span>  <span class=\"p\">:<\/span> <span class=\"p\">[<\/span><span class=\"nx\">ROUTER_DIRECTIVES<\/span><span class=\"p\">],<\/span>\r\n<span class=\"p\">})<\/span>\r\n\r\n<span class=\"k\">export<\/span> <span class=\"kd\">class<\/span> <span class=\"nx\">NavbarComponent<\/span> <span class=\"k\">implements<\/span> <span class=\"nx\">OnInit<\/span>\r\n<span class=\"p\">{<\/span>\r\n  <span class=\"k\">private<\/span> <span class=\"nx\">_selectedId<\/span><span class=\"p\">:<\/span> <span class=\"kr\">string<\/span><span class=\"p\">;<\/span>\r\n\r\n\r\n  <span class=\"k\">private<\/span> <span class=\"nx\">isSelected<\/span><span class=\"p\">(<\/span><span class=\"nx\">id<\/span><span class=\"p\">:<\/span> <span class=\"kr\">string<\/span><span class=\"p\">)<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_selectedId<\/span> <span class=\"o\">===<\/span> <span class=\"nx\">id<\/span><span class=\"p\">;<\/span>\r\n  <span class=\"p\">}<\/span>\r\n\r\n\r\n  <span class=\"k\">private<\/span> <span class=\"nx\">onSelect<\/span><span class=\"p\">(<\/span><span class=\"nx\">id<\/span><span class=\"p\">:<\/span> <span class=\"kr\">string<\/span><span class=\"p\">)<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">return<\/span> <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_selectedId<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">id<\/span><span class=\"p\">;<\/span>\r\n  <span class=\"p\">}<\/span>\r\n\r\n\r\n  <span class=\"k\">public<\/span> <span class=\"nx\">ngOnInit<\/span><span class=\"p\">()<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_selectedId<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">home<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n  <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>\u5bb6\u5ead\u7ec4\u4ef6.js<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Component<\/span><span class=\"p\">,<\/span> <span class=\"nx\">OnInit<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/core<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Router<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">TMPL_ROOT<\/span>    <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/angular\/assets\/templates<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">my-home<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">Component<\/span><span class=\"p\">({<\/span>\r\n  <span class=\"na\">selector<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">COMPONENT_ID<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">templateUrl<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">TMPL_ROOT<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/<\/span><span class=\"dl\">\"<\/span> <span class=\"o\">+<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.tmpl<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n<span class=\"p\">})<\/span>\r\n\r\n<span class=\"k\">export<\/span> <span class=\"kd\">class<\/span> <span class=\"nx\">HomeComponent<\/span> <span class=\"k\">implements<\/span> <span class=\"nx\">OnInit<\/span>\r\n<span class=\"p\">{<\/span>\r\n  <span class=\"k\">public<\/span> <span class=\"kd\">constructor<\/span><span class=\"p\">(<\/span><span class=\"k\">private<\/span> <span class=\"nx\">_router<\/span><span class=\"p\">:<\/span> <span class=\"nx\">Router<\/span><span class=\"p\">)<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"c1\">\/\/no-op<\/span>\r\n  <span class=\"p\">}<\/span>\r\n\r\n\r\n  <span class=\"k\">public<\/span> <span class=\"nx\">ngOnInit<\/span><span class=\"p\">()<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_router<\/span><span class=\"p\">.<\/span><span class=\"nx\">navigate<\/span><span class=\"p\">([<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">Home<\/span><span class=\"dl\">\"<\/span><span class=\"p\">]);<\/span>\r\n  <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>\u5173\u4e8e\u7ec4\u4ef6.js<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Component<\/span><span class=\"p\">,<\/span> <span class=\"nx\">OnInit<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/core<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Router<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">TMPL_ROOT<\/span>    <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/angular\/assets\/templates<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">my-about<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">Component<\/span><span class=\"p\">({<\/span>\r\n  <span class=\"na\">selector<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">COMPONENT_ID<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">templateUrl<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">TMPL_ROOT<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/<\/span><span class=\"dl\">\"<\/span> <span class=\"o\">+<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.tmpl<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n<span class=\"p\">})<\/span>\r\n\r\n<span class=\"k\">export<\/span> <span class=\"kd\">class<\/span> <span class=\"nx\">AboutComponent<\/span> <span class=\"k\">implements<\/span> <span class=\"nx\">OnInit<\/span>\r\n<span class=\"p\">{<\/span>\r\n  <span class=\"k\">public<\/span> <span class=\"kd\">constructor<\/span><span class=\"p\">(<\/span><span class=\"k\">private<\/span> <span class=\"nx\">_router<\/span><span class=\"p\">:<\/span> <span class=\"nx\">Router<\/span><span class=\"p\">)<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"c1\">\/\/no-op<\/span>\r\n  <span class=\"p\">}<\/span>\r\n\r\n\r\n  <span class=\"k\">public<\/span> <span class=\"nx\">ngOnInit<\/span><span class=\"p\">()<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_router<\/span><span class=\"p\">.<\/span><span class=\"nx\">navigate<\/span><span class=\"p\">([<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">About<\/span><span class=\"dl\">\"<\/span><span class=\"p\">]);<\/span>\r\n  <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>\u8054\u7cfb\u7ec4\u4ef6.ts<\/h3>\n<pre class=\"post-pre\"><code><span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Component<\/span><span class=\"p\">,<\/span> <span class=\"nx\">OnInit<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/core<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"k\">import<\/span> <span class=\"p\">{<\/span><span class=\"nx\">Router<\/span><span class=\"p\">}<\/span> <span class=\"k\">from<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">angular2\/router<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">TMPL_ROOT<\/span>    <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/angular\/assets\/templates<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n<span class=\"kd\">const<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">=<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">my-contact<\/span><span class=\"dl\">\"<\/span><span class=\"p\">;<\/span>\r\n\r\n<span class=\"p\">@<\/span><span class=\"nd\">Component<\/span><span class=\"p\">({<\/span>\r\n  <span class=\"na\">selector<\/span>    <span class=\"p\">:<\/span> <span class=\"nx\">COMPONENT_ID<\/span><span class=\"p\">,<\/span>\r\n  <span class=\"na\">templateUrl<\/span> <span class=\"p\">:<\/span> <span class=\"nx\">TMPL_ROOT<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">\/<\/span><span class=\"dl\">\"<\/span> <span class=\"o\">+<\/span> <span class=\"nx\">COMPONENT_ID<\/span> <span class=\"o\">+<\/span> <span class=\"dl\">\"<\/span><span class=\"s2\">.tmpl<\/span><span class=\"dl\">\"<\/span><span class=\"p\">,<\/span>\r\n<span class=\"p\">})<\/span>\r\n\r\n<span class=\"k\">export<\/span> <span class=\"kd\">class<\/span> <span class=\"nx\">ContactComponent<\/span> <span class=\"k\">implements<\/span> <span class=\"nx\">OnInit<\/span>\r\n<span class=\"p\">{<\/span>\r\n  <span class=\"k\">public<\/span> <span class=\"kd\">constructor<\/span><span class=\"p\">(<\/span><span class=\"k\">private<\/span> <span class=\"nx\">_router<\/span><span class=\"p\">:<\/span> <span class=\"nx\">Router<\/span><span class=\"p\">)<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"c1\">\/\/no-op<\/span>\r\n  <span class=\"p\">}<\/span>\r\n\r\n\r\n  <span class=\"k\">public<\/span> <span class=\"nx\">ngOnInit<\/span><span class=\"p\">()<\/span>\r\n  <span class=\"p\">{<\/span>\r\n    <span class=\"k\">this<\/span><span class=\"p\">.<\/span><span class=\"nx\">_router<\/span><span class=\"p\">.<\/span><span class=\"nx\">navigate<\/span><span class=\"p\">([<\/span><span class=\"dl\">\"<\/span><span class=\"s2\">Contact<\/span><span class=\"dl\">\"<\/span><span class=\"p\">]);<\/span>\r\n  <span class=\"p\">}<\/span>\r\n<span class=\"p\">}<\/span>\r\n<\/code><\/pre>\n<h3>\u5c06\u4ee3\u7801\u8f6c\u8bd1<\/h3>\n<pre class=\"post-pre\"><code><span class=\"gp\">$<\/span> tsc\r\n<\/code><\/pre>\n<h2>\u6a21\u677f\u6587\u4ef6<\/h2>\n<h3>\u6211\u7684\u5bfc\u822a\u680f\u6a21\u677f<\/h3>\n<pre class=\"post-pre\"><code><span class=\"c\">&lt;!-- Static navbar --&gt;<\/span>\r\n<span class=\"nt\">&lt;nav<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"navbar navbar-default\"<\/span><span class=\"nt\">&gt;<\/span>\r\n  <span class=\"nt\">&lt;div<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"container-fluid\"<\/span><span class=\"nt\">&gt;<\/span>\r\n    <span class=\"nt\">&lt;div<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"navbar-header\"<\/span><span class=\"nt\">&gt;<\/span>\r\n      <span class=\"nt\">&lt;button<\/span> <span class=\"na\">type=<\/span><span class=\"s\">\"button\"<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"navbar-toggle collapsed\"<\/span> <span class=\"na\">data-toggle=<\/span><span class=\"s\">\"collapse\"<\/span> <span class=\"na\">data-target=<\/span><span class=\"s\">\"#navbar\"<\/span> <span class=\"na\">aria-expanded=<\/span><span class=\"s\">\"false\"<\/span> <span class=\"na\">aria-controls=<\/span><span class=\"s\">\"navbar\"<\/span><span class=\"nt\">&gt;<\/span>\r\n        <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"sr-only\"<\/span><span class=\"nt\">&gt;<\/span>Toggle navigation<span class=\"nt\">&lt;\/span&gt;<\/span>\r\n        <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"icon-bar\"<\/span><span class=\"nt\">&gt;&lt;\/span&gt;<\/span>\r\n        <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"icon-bar\"<\/span><span class=\"nt\">&gt;&lt;\/span&gt;<\/span>\r\n        <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"icon-bar\"<\/span><span class=\"nt\">&gt;&lt;\/span&gt;<\/span>\r\n      <span class=\"nt\">&lt;\/button&gt;<\/span>\r\n      <span class=\"nt\">&lt;a<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"navbar-brand\"<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"index.html\"<\/span><span class=\"nt\">&gt;<\/span>Project name<span class=\"nt\">&lt;\/a&gt;<\/span>\r\n    <span class=\"nt\">&lt;\/div&gt;<\/span>\r\n    <span class=\"nt\">&lt;div<\/span> <span class=\"na\">id=<\/span><span class=\"s\">\"navbar\"<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"navbar-collapse collapse\"<\/span><span class=\"nt\">&gt;<\/span>\r\n      <span class=\"nt\">&lt;ul<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"nav navbar-nav\"<\/span><span class=\"nt\">&gt;<\/span>\r\n        <span class=\"c\">&lt;!-- *ngFor \u4f7f\u3063\u3066\u66f8\u304d\u76f4\u3059 --&gt;<\/span>\r\n        <span class=\"nt\">&lt;li<\/span> <span class=\"na\">[class.active]=<\/span><span class=\"s\">\"isSelected('home')\"<\/span> <span class=\"na\">(click)=<\/span><span class=\"s\">\"onSelect('home')\"<\/span><span class=\"nt\">&gt;&lt;a<\/span> <span class=\"na\">[routerLink]=<\/span><span class=\"s\">\"['Home']\"<\/span><span class=\"nt\">&gt;<\/span>Home<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n        <span class=\"nt\">&lt;li<\/span> <span class=\"na\">[class.active]=<\/span><span class=\"s\">\"isSelected('about')\"<\/span> <span class=\"na\">(click)=<\/span><span class=\"s\">\"onSelect('about')\"<\/span><span class=\"nt\">&gt;&lt;a<\/span> <span class=\"na\">[routerLink]=<\/span><span class=\"s\">\"['About']\"<\/span><span class=\"nt\">&gt;<\/span>About<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n        <span class=\"nt\">&lt;li<\/span> <span class=\"na\">[class.active]=<\/span><span class=\"s\">\"isSelected('contact')\"<\/span> <span class=\"na\">(click)=<\/span><span class=\"s\">\"onSelect('contact')\"<\/span><span class=\"nt\">&gt;&lt;a<\/span> <span class=\"na\">[routerLink]=<\/span><span class=\"s\">\"['Contact']\"<\/span><span class=\"nt\">&gt;<\/span>Contact<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n        <span class=\"nt\">&lt;li<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"dropdown\"<\/span><span class=\"nt\">&gt;<\/span>\r\n          <span class=\"nt\">&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"dropdown-toggle\"<\/span> <span class=\"na\">data-toggle=<\/span><span class=\"s\">\"dropdown\"<\/span> <span class=\"na\">role=<\/span><span class=\"s\">\"button\"<\/span> <span class=\"na\">aria-haspopup=<\/span><span class=\"s\">\"true\"<\/span> <span class=\"na\">aria-expanded=<\/span><span class=\"s\">\"false\"<\/span><span class=\"nt\">&gt;<\/span>Dropdown <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"caret\"<\/span><span class=\"nt\">&gt;&lt;\/span&gt;&lt;\/a&gt;<\/span>\r\n          <span class=\"nt\">&lt;ul<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"dropdown-menu\"<\/span><span class=\"nt\">&gt;<\/span>\r\n            <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span><span class=\"nt\">&gt;<\/span>Action<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span><span class=\"nt\">&gt;<\/span>Another action<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span><span class=\"nt\">&gt;<\/span>Something else here<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li<\/span> <span class=\"na\">role=<\/span><span class=\"s\">\"separator\"<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"divider\"<\/span><span class=\"nt\">&gt;&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"dropdown-header\"<\/span><span class=\"nt\">&gt;<\/span>Nav header<span class=\"nt\">&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span><span class=\"nt\">&gt;<\/span>Separated link<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n            <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"#\"<\/span><span class=\"nt\">&gt;<\/span>One more separated link<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n          <span class=\"nt\">&lt;\/ul&gt;<\/span>\r\n        <span class=\"nt\">&lt;\/li&gt;<\/span>\r\n      <span class=\"nt\">&lt;\/ul&gt;<\/span>\r\n      <span class=\"nt\">&lt;ul<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"nav navbar-nav navbar-right\"<\/span><span class=\"nt\">&gt;<\/span>\r\n        <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\".\/\"<\/span><span class=\"nt\">&gt;<\/span>Default <span class=\"nt\">&lt;span<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"sr-only\"<\/span><span class=\"nt\">&gt;<\/span>(current)<span class=\"nt\">&lt;\/span&gt;&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n        <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"..\/navbar-static-top\/\"<\/span><span class=\"nt\">&gt;<\/span>Static top<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n        <span class=\"nt\">&lt;li&gt;&lt;a<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"..\/navbar-fixed-top\/\"<\/span><span class=\"nt\">&gt;<\/span>Fixed top<span class=\"nt\">&lt;\/a&gt;&lt;\/li&gt;<\/span>\r\n      <span class=\"nt\">&lt;\/ul&gt;<\/span>\r\n    <span class=\"nt\">&lt;\/div&gt;<\/span><span class=\"c\">&lt;!--\/.nav-collapse --&gt;<\/span>\r\n  <span class=\"nt\">&lt;\/div&gt;<\/span><span class=\"c\">&lt;!--\/.container-fluid --&gt;<\/span>\r\n<span class=\"nt\">&lt;\/nav&gt;<\/span>\r\n<\/code><\/pre>\n<h3>\u6211\u7684\u5bb6\u6a21\u677f<\/h3>\n<pre class=\"post-pre\"><code><span class=\"c\">&lt;!-- Main component for a primary marketing message or call to action --&gt;<\/span>\r\n<span class=\"nt\">&lt;div<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"jumbotron\"<\/span><span class=\"nt\">&gt;<\/span>\r\n  <span class=\"nt\">&lt;h1&gt;<\/span>Navbar Home<span class=\"nt\">&lt;\/h1&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>This example is a quick exercise to illustrate how the default, static navbar and fixed to top navbar work. It includes the responsive CSS and HTML, so it also adapts to your viewport and device.<span class=\"nt\">&lt;\/p&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>\r\n    <span class=\"nt\">&lt;a<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"btn btn-lg btn-primary\"<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"..\/..\/components\/#navbar\"<\/span> <span class=\"na\">role=<\/span><span class=\"s\">\"button\"<\/span><span class=\"nt\">&gt;<\/span>View navbar docs <span class=\"ni\">&amp;raquo;<\/span><span class=\"nt\">&lt;\/a&gt;<\/span>\r\n  <span class=\"nt\">&lt;\/p&gt;<\/span>\r\n<span class=\"nt\">&lt;\/div&gt;<\/span>\r\n<\/code><\/pre>\n<h3>\u6211-about.tmpl<\/h3>\n<pre class=\"post-pre\"><code><span class=\"c\">&lt;!-- Main component for a primary marketing message or call to action --&gt;<\/span>\r\n<span class=\"nt\">&lt;div<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"jumbotron\"<\/span><span class=\"nt\">&gt;<\/span>\r\n  <span class=\"nt\">&lt;h1&gt;<\/span>Navbar About<span class=\"nt\">&lt;\/h1&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>This example is a quick exercise to illustrate how the default, static navbar and fixed to top navbar work. It includes the responsive CSS and HTML, so it also adapts to your viewport and device.<span class=\"nt\">&lt;\/p&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>\r\n    <span class=\"nt\">&lt;a<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"btn btn-lg btn-primary\"<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"..\/..\/components\/#navbar\"<\/span> <span class=\"na\">role=<\/span><span class=\"s\">\"button\"<\/span><span class=\"nt\">&gt;<\/span>View navbar docs <span class=\"ni\">&amp;raquo;<\/span><span class=\"nt\">&lt;\/a&gt;<\/span>\r\n  <span class=\"nt\">&lt;\/p&gt;<\/span>\r\n<span class=\"nt\">&lt;\/div&gt;<\/span>\r\n<\/code><\/pre>\n<h3>\u6211\u7684\u8054\u7cfb\u4eba\u6a21\u677f\u3002<\/h3>\n<pre class=\"post-pre\"><code><span class=\"c\">&lt;!-- Main component for a primary marketing message or call to action --&gt;<\/span>\r\n<span class=\"nt\">&lt;div<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"jumbotron\"<\/span><span class=\"nt\">&gt;<\/span>\r\n  <span class=\"nt\">&lt;h1&gt;<\/span>Navbar Contact<span class=\"nt\">&lt;\/h1&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>This example is a quick exercise to illustrate how the default, static navbar and fixed to top navbar work. It includes the responsive CSS and HTML, so it also adapts to your viewport and device.<span class=\"nt\">&lt;\/p&gt;<\/span>\r\n  <span class=\"nt\">&lt;p&gt;<\/span>\r\n    <span class=\"nt\">&lt;a<\/span> <span class=\"na\">class=<\/span><span class=\"s\">\"btn btn-lg btn-primary\"<\/span> <span class=\"na\">href=<\/span><span class=\"s\">\"..\/..\/components\/#navbar\"<\/span> <span class=\"na\">role=<\/span><span class=\"s\">\"button\"<\/span><span class=\"nt\">&gt;<\/span>View navbar docs <span class=\"ni\">&amp;raquo;<\/span><span class=\"nt\">&lt;\/a&gt;<\/span>\r\n  <span class=\"nt\">&lt;\/p&gt;<\/span>\r\n<span class=\"nt\">&lt;\/div&gt;<\/span>\r\n<\/code><\/pre>\n<h2>CSS\uff08\u5c42\u53e0\u6837\u5f0f\u8868\uff09<\/h2>\n<h3>\u5bfc\u822a\u680f\u6837\u5f0f.css<\/h3>\n<pre class=\"post-pre\"><code><span class=\"gp\">$<\/span> <span class=\"nb\">cd <\/span>assets\/styles\r\n<span class=\"gp\">$<\/span> wget http:\/\/getbootstrap.com\/examples\/navbar\/navbar.css\r\n<\/code><\/pre>\n<h3>\u8bbf\u95ee<\/h3>\n<p>\u8bf7\u5c06\u4ee5\u4e0b\u5185\u5bb9\u7528\u4e2d\u6587\u7ffb\u8bd1\u5e76\u6539\u5199\uff0c\u53ea\u9700\u8981\u63d0\u4f9b\u4e00\u79cd\u65b9\u5f0f\uff1a<br \/>\nhttp:\/\/hogehoge.com\/angular\/index.html<\/p>\n<p>\u732a\u732a\u7db2\u5740\u4e3a\uff1ahttp:\/\/hogehoge.com\/angular\/index.html<\/p>\n<h2>\u9898\u76ee<\/h2>\n<ul class=\"post-ul\">1) \u3010\u5b9f\u88c5\u5b8c\u4e86\u3011 [routerLink]\u3092\u5b9a\u7fa9\u3057\u305f\u306e\u3061\u3001\u30ea\u30f3\u30af\u3092\u30af\u30ea\u30c3\u30af\u3057\u305f\u3042\u3068<\/p>\n<li class=\"active\">\u3092\u6307\u5b9a\u3059\u308b\u306b\u306f\u3069\u3046\u3059\u308b\u304b(click)\u3068[class.active]\u3092\u5229\u7528\u3057\u3066\u5b9f\u88c5\u3057\u307e\u3057\u305f\u3002\n<p>2) \u3010\u5b9f\u88c5\u5b8c\u4e86\u3011 [routerLink]\u3092\/home\u7b49\u3067\u5b9a\u7fa9\u3059\u308b\u3068\u3001\u30ea\u30ed\u30fc\u30c9\u6642\u306b\u3001404 not found \u306b\u98db\u3070\u3055\u308c\u3066\u3059\u3054\u304f\u30e1\u30f3\u30c9\u30a6\u306a\u611f\u3058\u3002\u3053\u308c\u306f\u30cf\u30c3\u30b7\u30e5\u3092\u4f7f\u3048\u3070\u56de\u907f\u3067\u304d\u305d\u3046\u306a\u306e\u3067\u3001\u305d\u3061\u3089\u306e\u5b9f\u88c5\u306b\u5909\u66f4\u3057\u305f\u3044\u306a\u3041\u3002browser-url-styles<\/p>\n<p>angular2\/ts\/src\/router\/hash_location_strategy.ts\u306b\u66f8\u3044\u3066\u3042\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>3) navbar.component\u4ee5\u5916\u306b\u30eb\u30fc\u30c6\u30a3\u30f3\u30b0\u3092\u8a2d\u5b9a\u3057\u305f\u3044\u5834\u5408\u306f\u3069\u3046\u66f8\u304f\u304b\u3002<\/li>\n<\/ul>\n<h2>\u76f8\u5173<\/h2>\n<p>\u5173\u4e8e\u5728[Angular2]\u4e2d\u4f7f\u7528\u7684\u8def\u7531\u5668\u7684HTML\u7684\u57fa\u7840\u5143\u7d20<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e3a\u4e86\u5b66\u4e60Angular2\u7684\u8def\u7531\u3002 \uff08\u5ffd\u7565\u4e86\u4e0e\u8def\u7531\u5904\u7406\u65e0\u5173\u7684\u90e8\u5206\u5904\u7406\uff0c\u8bf7\u4e8b\u5148\u8c05\u89e3\u3002\uff09 \u73af\u5883 package.js [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-39233","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011 - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/zh\/blog\/\u3010angular2\u3011\u5c1d\u8bd5\u7528angular2\u5b9e\u73b0twitterbootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011\" \/>\n<meta property=\"og:description\" content=\"\u4e3a\u4e86\u5b66\u4e60Angular2\u7684\u8def\u7531\u3002 \uff08\u5ffd\u7565\u4e86\u4e0e\u8def\u7531\u5904\u7406\u65e0\u5173\u7684\u90e8\u5206\u5904\u7406\uff0c\u8bf7\u4e8b\u5148\u8c05\u89e3\u3002\uff09 \u73af\u5883 package.js [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/zh\/blog\/\u3010angular2\u3011\u5c1d\u8bd5\u7528angular2\u5b9e\u73b0twitterbootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2022-12-04T07:58:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-04-29T04:56:33+00:00\" \/>\n<meta name=\"author\" content=\"\u9038, \u79d1\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u9038, \u79d1\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 \u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/\",\"name\":\"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\"},\"datePublished\":\"2022-12-04T07:58:20+00:00\",\"dateModified\":\"2024-04-29T04:56:33+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/85c1dae56e6ea1e695c73d33c684d487\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#breadcrumb\"},\"inLanguage\":\"zh-Hans\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/zh\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"zh-Hans\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/85c1dae56e6ea1e695c73d33c684d487\",\"name\":\"\u9038, \u79d1\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c94f6d9cbbfbca863fab309840bd690c153c95f8490c290ad2ed54dd693dad16?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c94f6d9cbbfbca863fab309840bd690c153c95f8490c290ad2ed54dd693dad16?s=96&d=mm&r=g\",\"caption\":\"\u9038, \u79d1\"},\"url\":\"https:\/\/www.silicloud.com\/zh\/blog\/author\/keyi\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-Hans\",\"@id\":\"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011 - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/zh\/blog\/\u3010angular2\u3011\u5c1d\u8bd5\u7528angular2\u5b9e\u73b0twitterbootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\/","og_locale":"zh_CN","og_type":"article","og_title":"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011","og_description":"\u4e3a\u4e86\u5b66\u4e60Angular2\u7684\u8def\u7531\u3002 \uff08\u5ffd\u7565\u4e86\u4e0e\u8def\u7531\u5904\u7406\u65e0\u5173\u7684\u90e8\u5206\u5904\u7406\uff0c\u8bf7\u4e8b\u5148\u8c05\u89e3\u3002\uff09 \u73af\u5883 package.js [&hellip;]","og_url":"https:\/\/www.silicloud.com\/zh\/blog\/\u3010angular2\u3011\u5c1d\u8bd5\u7528angular2\u5b9e\u73b0twitterbootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2022-12-04T07:58:20+00:00","article_modified_time":"2024-04-29T04:56:33+00:00","author":"\u9038, \u79d1","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005":"\u9038, \u79d1","\u9884\u8ba1\u9605\u8bfb\u65f6\u95f4":"7 \u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/","url":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/","name":"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website"},"datePublished":"2022-12-04T07:58:20+00:00","dateModified":"2024-04-29T04:56:33+00:00","author":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/85c1dae56e6ea1e695c73d33c684d487"},"breadcrumb":{"@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#breadcrumb"},"inLanguage":"zh-Hans","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/zh\/blog\/"},{"@type":"ListItem","position":2,"name":"\u3010Angular2\u3011\u5c1d\u8bd5\u7528Angular2\u5b9e\u73b0TwitterBootstrap\u7684\u5bfc\u822a\u680f\u3010\u6b63\u5728\u52aa\u529b\u5b9e\u9a8c\u4e2d\u3011"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#website","url":"https:\/\/www.silicloud.com\/zh\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"zh-Hans"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/85c1dae56e6ea1e695c73d33c684d487","name":"\u9038, \u79d1","image":{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c94f6d9cbbfbca863fab309840bd690c153c95f8490c290ad2ed54dd693dad16?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c94f6d9cbbfbca863fab309840bd690c153c95f8490c290ad2ed54dd693dad16?s=96&d=mm&r=g","caption":"\u9038, \u79d1"},"url":"https:\/\/www.silicloud.com\/zh\/blog\/author\/keyi\/"},{"@type":"ImageObject","inLanguage":"zh-Hans","@id":"https:\/\/www.silicloud.com\/zh\/blog\/%e3%80%90angular2%e3%80%91%e5%b0%9d%e8%af%95%e7%94%a8angular2%e5%ae%9e%e7%8e%b0twitterbootstrap%e7%9a%84%e5%af%bc%e8%88%aa%e6%a0%8f%e3%80%90%e6%ad%a3%e5%9c%a8%e5%8a%aa%e5%8a%9b%e5%ae%9e%e9%aa%8c\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/39233","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/comments?post=39233"}],"version-history":[{"count":2,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/39233\/revisions"}],"predecessor-version":[{"id":85407,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/posts\/39233\/revisions\/85407"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/media?parent=39233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/categories?post=39233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/zh\/blog\/wp-json\/wp\/v2\/tags?post=39233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}