{
  "version": "https://jsonfeed.org/version/1", 
  "title": "Ionic", 
  "description": "The beautiful, open source front-end SDK for developing hybrid mobile apps with HTML5.", 
  "home_page_url": "https://www.v2ex.com/go/ionic", 
  "feed_url": "https://www.v2ex.com/feed/ionic.json", 
  "icon": "https://cdn.v2ex.com/navatar/e97e/e205/844_large.png?m=1579847461", 
  "favicon": "https://cdn.v2ex.com/navatar/e97e/e205/844_normal.png?m=1579847461", 
  "items": [
    {
      "author": {
        "url": "https://www.v2ex.com/member/vinciarts", 
        "name": "vinciarts", 
        "avatar": "https://cdn.v2ex.com/avatar/a09b/68ad/7242_large.png?m=1685434531"
      }, 
      "url": "https://www.v2ex.com/t/944139", 
      "title": "\u6709\u6ca1\u6709\u719f\u6089 Ionic \u7684", 
      "id": "https://www.v2ex.com/t/944139", 
      "date_published": "2023-05-30T03:30:36+00:00", 
      "content_html": "<p>\u6700\u8fd1\u5728\u8003\u8651\u662f\u4e0d\u662f Android \u548c iOS \u76f4\u63a5\u7528 Ionic \u5f00\u53d1\uff0c\u63d0\u9ad8\u6548\u7387\u3002\n\u7528\u8fc7\u7684\u8001\u94c1\u6709\u7ecf\u9a8c\u53ef\u4ee5\u5206\u4eab\u5417\uff1f\u5404\u5e73\u53f0\u5355\u72ec\u5f00\u53d1\u6216\u8005\u7528 Uiapp/Flutter \u4f1a\u4e0d\u4f1a\u66f4\u597d\uff1f</p>\n"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/coloz", 
        "name": "coloz", 
        "avatar": "https://cdn.v2ex.com/static/img/avatar_large.png"
      }, 
      "url": "https://www.v2ex.com/t/650768", 
      "date_modified": "2020-03-07T12:20:45+00:00", 
      "content_html": "<p>\u8fd9\u51e0\u5929\u4e86\u89e3\u4e86\u4e0b qiankun\\single-spa\\icestark\\mooa\\ngx-planet<br/>\n\u4f46\u611f\u89c9\u90fd\u662f\u4e3a\u4e86\u89e3\u51b3 web \u7aef\u5f00\u53d1\u800c\u8bbe\u8ba1\u7684\uff0c\u6709\u66f4\u9002\u5408 app \u7684\u65b9\u6848\u4e48\uff1f</p>\n<p>\u76ee\u524d app \u4f7f\u7528 iframe+postmessage \u5b9e\u73b0\u5fae\u524d\u7aef\uff0c\u7528\u5230\u65f6\u6ca1\u95ee\u9898\uff0c\u4f46\u60f3\u5bfb\u6c42\u4e0b\u66f4\u597d\u7684\u89e3\u51b3\u65b9\u6848\uff0c\u6c42\u5927\u4f6c\u4eec\u5206\u4eab\u4e0b\u7ecf\u9a8c\u3002</p>\n", 
      "date_published": "2020-03-07T12:19:53+00:00", 
      "title": "cordova/ionic App \u5b9e\u73b0\u5fae\u524d\u7aef\uff0c\u6c42\u4e2a\u6700\u4f73\u5b9e\u8df5", 
      "id": "https://www.v2ex.com/t/650768"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/Wilon", 
        "name": "Wilon", 
        "avatar": "https://cdn.v2ex.com/avatar/0f8b/7aec/82351_large.png?m=1416314617"
      }, 
      "url": "https://www.v2ex.com/t/352864", 
      "date_modified": "2019-12-31T05:07:04+00:00", 
      "content_html": "<p>RT \uff0c\u6700\u597d\u662f\u4f7f\u7528 16 \u5e74\u4e4b\u540e\u7684 ionic \u6846\u67b6\uff0c\u501f\u4e2a\u53c2\u8003\uff0c\u770b\u770b ionic \u7684\u539f\u751f\u4f53\u9a8c\u600e\u4e48\u6837</p>\n", 
      "date_published": "2017-04-06T02:36:29+00:00", 
      "title": "\u6709\u8c01\u77e5\u9053\u4f7f\u7528 ionic \u6846\u67b6\u7684 APP \u5417\uff1f", 
      "id": "https://www.v2ex.com/t/352864"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/gulullu", 
        "name": "gulullu", 
        "avatar": "https://cdn.v2ex.com/avatar/51ae/37db/75345_large.png?m=1753845097"
      }, 
      "url": "https://www.v2ex.com/t/342928", 
      "date_modified": "2019-12-31T05:07:10+00:00", 
      "content_html": "<p>\u57fa\u7c7b\uff1a</p>\n<pre><code>import { LoginPage } from './../login/login/login';\nimport { AccountData } from './../../storages/account_data';\nimport { Component, Injectable } from '@angular/core';\nimport { NavController, NavParams, Platform, ViewController } from 'ionic-angular';\n/*\n  Generated class for the Base page.\n\n  See http://ionicframework.com/docs/v2/components/#navigation for more info on\n  Ionic pages and navigation.\n*/\n\n@Component({\n  selector: 'page-base',\n  templateUrl: 'base.html'\n})\nexport abstract class BasePage {\n  needLogin = false;\n\n  constructor(protected accountData: AccountData, protected nav: NavController) { }\n\n  push(page: any) {\n    this.accountData.hasLoggedIn().subscribe(hasLoggedIn =&gt; {\n      if (hasLoggedIn) {\n        this.nav.push(page);\n      } else {\n        if (page.needLogin) {\n          this.nav.push(LoginPage);\n        } else {\n          this.nav.push(page)\n        }\n      }\n    });\n  }\n\n  pop() {\n    this.nav.pop();\n  }\n\n  setRoot(page: any) {\n    this.nav.setRoot(page);\n  }\n}\n</code></pre>\n<p>\u7ee7\u627f\u8be5\u57fa\u7c7b\u7684\uff1a</p>\n<pre><code>import { AccountData } from './../../storages/account_data';\nimport { BasePage } from './../base/base';\nimport { Component } from '@angular/core';\nimport { NavController, NavParams } from 'ionic-angular';\n\n/*\n  Generated class for the Discover page.\n\n  See http://ionicframework.com/docs/v2/components/#navigation for more info on\n  Ionic pages and navigation.\n*/\n@Component({\n  selector: 'page-discover',\n  templateUrl: 'discover.html'\n})\nexport class DiscoverPage extends BasePage {\n\n  constructor(protected accountData: AccountData, protected navCtrl: NavController, ) {\n    super(accountData, navCtrl);\n  }\n\n}\n\n</code></pre>\n<p>\u8fd0\u884c<code>ionic serve</code>\u540e\u62a5\u9519\uff1a\n<code>Uncaught TypeError: Object prototype may only be an Object or null: undefined at setPrototypeOf ()</code></p>\n<p>\u4f46\u662f\u5982\u679c\u7236\u7c7b\u7684\u6784\u9020\u65b9\u6cd5\u4e3a\u7a7a\u7684\u8bdd\u4e00\u5207\u6b63\u5e38\uff0c\u6c42\u89e3\u3002</p>\n", 
      "date_published": "2017-02-24T07:15:00+00:00", 
      "title": "ionic 2 \u5982\u4f55\u7ee7\u627f\u4e00\u4e2a\u5df2\u7ecf\u4f9d\u8d56\u6ce8\u5165 service \u7684\u57fa\u7c7b\uff1f", 
      "id": "https://www.v2ex.com/t/342928"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/qweweretrt515", 
        "name": "qweweretrt515", 
        "avatar": "https://cdn.v2ex.com/gravatar/c60934dfa92c535135851924480dba33?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/310518", 
      "date_modified": "2016-10-04T07:24:07+00:00", 
      "content_html": "\u8f6c\u8f7d  <a target=\"_blank\" href=\"https://github.com/XueRainey/ionic2\" rel=\"nofollow\">https://github.com/XueRainey/ionic2</a>\r<br />\r<br />\r<br />\u611f\u8c22\u8fd9\u4e2a\u4f5c\u8005\u7684\u4ed8\u51fa\r<br />\r<br />\r<br />\u4e0b\u9762\u662f\u4ed6\u7684\u535a\u5ba2 <a target=\"_blank\" href=\"http://rainey.space/2016/04/06/Ionic2_Chinese_Document/\" rel=\"nofollow\">http://rainey.space/2016/04/06/Ionic2_Chinese_Document/</a>", 
      "date_published": "2016-10-04T07:22:48+00:00", 
      "title": "ionic2.0@beta \u7248\u672c\u6587\u6863 -\u8f6c\u6458 \u4e2d\u6587\u6559\u7a0b\u54e6", 
      "id": "https://www.v2ex.com/t/310518"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/WildCat", 
        "name": "WildCat", 
        "avatar": "https://cdn.v2ex.com/avatar/baf2/9ae7/39784_large.png?m=1710948175"
      }, 
      "url": "https://www.v2ex.com/t/293037", 
      "date_modified": "2019-12-31T05:07:28+00:00", 
      "content_html": "\u5728 \u7ea2\u7c73 Note 1 \u3001 Nexus 6 \u3001\u5c0f\u7c73 3 \u4e0a\u8bd5\u4e86\u8bd5 Euro 2016 \u8fd9\u4e2a App \uff0c\u611f\u89c9\u9664\u4e86 \u7ea2\u7c73 Note 1 \u7565\u5fae\u5361\u987f\uff0c\u5176\u4ed6\u90fd\u5f88\u6d41\u7545\u3002\r<br />\r<br />\u8fd8\u8bb0\u5f97\u5f53\u65f6\u7528 Ionic \u5199\u7684\u6bd4\u8d5b app \uff0c\u5730\u56fe\u5728 Android \u4e0a\u5361\u7684\u4e0d\u884c\uff0c\u73b0\u5728\u5b8c\u5168\u6ca1\u6709\u90a3\u79cd\u611f\u89c9\u4e86\u3002\r<br />\r<br />\u7a81\u7136\u89c9\u5f97 react native \u4f18\u52bf\u4e0d\u662f\u7279\u522b\u5927\u4e86\uff0c\u6bd5\u7adf\u524d\u7aef\u66f4\u81ea\u7531\u3002", 
      "date_published": "2016-07-17T08:41:06+00:00", 
      "title": "\u521a\u521a\u53bb Ionic Framework \u5b98\u65b9\u7684 Showcase \u8bd5\u4e86\u4e00\u5806 Android app\uff0c\u611f\u89c9\u73b0\u5728 Hybrid App \u5728 Android \u4e0a\u90fd\u597d\u6d41\u7545\uff0c\u8ddf 3 \u5e74\u524d\u53c2\u52a0\u6bd4\u8d5b\u65f6\u76f8\u6bd4\u611f\u89c9\u63d0\u5347\u592a\u591a\u592a\u591a\u4e86", 
      "id": "https://www.v2ex.com/t/293037"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/elviscai", 
        "name": "elviscai", 
        "avatar": "https://cdn.v2ex.com/avatar/dc91/2a25/385_large.png?m=1747877559"
      }, 
      "url": "https://www.v2ex.com/t/257911", 
      "date_modified": "2019-12-31T05:07:35+00:00", 
      "content_html": "<p>OS X 10.11.3<br>\nnode 4.3.1<br>\nnpm 2.14.12</p>\n<div class=\"highlight\"><pre>$ sudo npm install -g ionic\n/usr/local/bin/ionic -&gt; /usr/local/lib/node_modules/ionic/bin/ionic\n\n&gt; node-sass@3.4.2 install /usr/local/lib/node_modules/ionic/node_modules/node-sass\n&gt; node scripts/install.js\n\nshell-init: error retrieving current directory: getcwd: cannot access parent directories: Permission denied\npath.js:424\n    var path = (i &gt;= 0) ? arguments[i] : process.cwd();\n                                                 ^\n\nError: EACCES: permission denied, uv_cwd\n    at Error (native)\n    at Object.posix.resolve (path.js:424:50)\n    at startup (node.js:91:32)\n    at node.js:962:3\nnpm ERR! Darwin 15.3.0\nnpm ERR! argv &quot;/usr/local/bin/node&quot; &quot;/usr/local/bin/npm&quot; &quot;install&quot; &quot;-g&quot; &quot;ionic&quot;\nnpm ERR! node v4.3.1\nnpm ERR! npm  v2.14.12\nnpm ERR! code ELIFECYCLE\n\nnpm ERR! node-sass@3.4.2 install: `node scripts/install.js`\nnpm ERR! Exit status 1\nnpm ERR!\nnpm ERR! Failed at the node-sass@3.4.2 install script &#39;node scripts/install.js&#39;.\nnpm ERR! This is most likely a problem with the node-sass package,\nnpm ERR! not with npm itself.\nnpm ERR! Tell the author that this fails on your system:\nnpm ERR!     node scripts/install.js\nnpm ERR! You can get their info via:\nnpm ERR!     npm owner ls node-sass\nnpm ERR! There is likely additional logging output above.\n\nnpm ERR! Please include the following file with any support request:\nnpm ERR!     /Users/elviscai/npm-debug.log\n</pre></div>\n", 
      "date_published": "2016-02-20T13:22:14+00:00", 
      "title": "[\u6c42\u52a9] Ionic \u5b89\u88c5\u4e0d\u80fd\uff1a Error: EACCES: permission denied, uv_cwd", 
      "id": "https://www.v2ex.com/t/257911"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/lizheming", 
        "name": "lizheming", 
        "avatar": "https://cdn.v2ex.com/avatar/c5ab/6ceb/5238_large.png?m=1334932135"
      }, 
      "url": "https://www.v2ex.com/t/208171", 
      "title": "ionic \u4f7f\u7528\u767e\u5ea6\u5730\u56fe App \u663e\u793a\u7a7a\u767d", 
      "id": "https://www.v2ex.com/t/208171", 
      "date_published": "2015-07-24T15:40:24+00:00", 
      "content_html": "\u4f7f\u7528\u4e86\u767e\u5ea6\u5730\u56fe JS \u5927\u4f17\u7248 SDK\uff0c\u5728\u6d4f\u89c8\u5668\u4e2d\u663e\u793a\u6ca1\u6709\u95ee\u9898\uff0c\u4f46\u662f\u7f16\u8bd1\u6210 App \u653e\u5230\u624b\u673a\u7aef\u4e4b\u540e\u5c31\u662f\u4e0d\u663e\u793a\u5730\u56fe\uff0c\u6211\u641c\u7d22\u4e86\u4e00\u4e0b\u53d1\u73b0\u6709\u4e00\u4e9b\u4eba\u6709\u78b0\u5230\u8fc7\u8fd9\u4e2a\u95ee\u9898\uff0c\u6240\u4ee5\u7279\u6765\u54a8\u8be2\u4e00\u4e0b\u3002"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/xiaozhao", 
        "name": "xiaozhao", 
        "avatar": "https://cdn.v2ex.com/avatar/182a/02ea/85167_large.png?m=1547029944"
      }, 
      "url": "https://www.v2ex.com/t/203410", 
      "title": "\u54ea\u4f4d\u5927\u795e\u80fd\u53d1\u4e00\u4e2a ionic \u5229\u7528\u767e\u5ea6\u5730\u56fe API \u6216\u8005\u9ad8\u5fb7\u5730\u56fe API \u5b9a\u4f4d\u83b7\u53d6\u5f53\u524d\u4f4d\u7f6e\u7684\u4f8b\u5b50", 
      "id": "https://www.v2ex.com/t/203410", 
      "date_published": "2015-07-05T02:35:45+00:00", 
      "content_html": "\u54ea\u4f4d\u5927\u795e\u80fd\u53d1\u4e00\u4e2aionic\u5229\u7528\u767e\u5ea6\u5730\u56feAPI\u6216\u8005\u9ad8\u5fb7\u5730\u56feAPI\u5b9a\u4f4d\u83b7\u53d6\u5f53\u524d\u4f4d\u7f6e\u7684\u4f8b\u5b50"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/likai", 
        "name": "likai", 
        "avatar": "https://cdn.v2ex.com/gravatar/4e0888f96a9339fdff0d645c1fee3117?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/201169", 
      "title": "Ionic+angularjs \u4f20\u53c2\u6570\u95ee\u9898\u8bf7\u6559", 
      "id": "https://www.v2ex.com/t/201169", 
      "date_published": "2015-06-25T10:50:17+00:00", 
      "content_html": "\u516c\u53f8\u8981\u4e0aAPP\u3002\u8ba9\u6211\u8fd9\u4e2a\u83dc\u9e1f\u6765\u7528Ionic+angularjs\r<br />\r<br />\u73b0\u5728\u8981\u4ece\u9996\u9875\u6587\u7ae0\u5217\u8868\u9875\u4f20\u53c2\u6570\u5230\u7b2c\u4e8c\u4e2a\u9875\u9762\u3002\u7b2c\u4e8c\u4e2a\u9875\u9762\u6839\u636e\u9996\u9875\u4f20\u8fc7\u6765\u7684\u6587\u7ae0ID\u53c2\u6570\u67e5\u8be2\u6570\u636e\u5e93\u5e76\u663e\u793a\u6587\u7ae0\u5185\u5bb9\uff0c\r<br />\u914d\u7f6e\uff1a\r<br />$urlRouterProvider.otherwise(&quot;/news/0&quot;);\r<br />.state('news', {\r<br />      url: &quot;/news/:id&quot;,\r<br />      templateUrl: &quot;templates/news.html&quot;,\r<br />       controller: 'NewsController'\r<br />    })\r<br />.state('shownews', {\r<br />      url: &quot;/news/show/:id&quot;,\r<br />      templateUrl: &quot;templates/news-show.html&quot;,\r<br />       controller: 'NewsController'\r<br />    })\r<br />factory.NewsSrv\u4e0b\uff1a\r<br />show = function (id) {\r<br />            return ApiSrv.req(&quot;news.public.News.itemit&quot;, {id: id});//\u4ece\u8fdc\u7a0b\u53d6\u6570\u636e\r<br />        }\r<br />\r<br />angular.module.controller\u4e0b\r<br />\r<br />$scope.newsshow = NewsSrv.show($stateParams.id);\r<br />\r<br />\u7528a href\u4ecenews\u9875\u9762\u4f20ID\u8fdbshownews\u3002\r<br />\u73b0\u5728\u7684\u95ee\u9898\u662f\u3002NewsController\u600e\u4e48\u624d\u80fd\u5728\u4f20\u53c2\u6570\u8fdb\u5165\u8fd9\u4e2a\u9875\u9762\u624d\u5f00\u59cb\uff1f\r<br />\r<br />\u73b0\u5728\u6211\u7684\u662f\u4e00\u52a0\u8f7d\u7b2c\u4e00\u4e2a\u9875\u9762\u3002\u8bf7\u6c42\u4e86\u4e24\u6b21\u3002\u7b2c\u4e00\u6b21\u8bf7\u6c42\u5217\u8868\u3002\u7b2c\u4e8c\u6b21\u6267\u884c\u4e86$scope.newsshow\uff0c"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/colorsand", 
        "name": "colorsand", 
        "avatar": "https://cdn.v2ex.com/gravatar/9302d94eb3e41363438a2b60f6496b5a?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/196102", 
      "title": "\u80fd\u7528 ionic \u505a\u624b\u673a\u7ad9\u5417\uff1f", 
      "id": "https://www.v2ex.com/t/196102", 
      "date_published": "2015-06-04T07:56:45+00:00", 
      "content_html": "\u6211\u7528ionic\u751f\u6210\u7684\u9875\u9762\u5728\u624b\u673a\u4e2d\u5e03\u5c40\u662f\u4e71\u7684\uff0c\u5e95\u90e8\u7684tab\u8dd1\u5230\u4e0a\u8fb9\u53bb\u4e86\uff0c\u662f\u4e0d\u662f\u4e0d\u80fd\u7528\u5b83\u505a\u624b\u673a\u7ad9\u554a\uff1f"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/colorsand", 
        "name": "colorsand", 
        "avatar": "https://cdn.v2ex.com/gravatar/9302d94eb3e41363438a2b60f6496b5a?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/195725", 
      "title": "ionic \u5982\u4f55\u4ece\u540e\u53f0\u52a8\u6001\u83b7\u53d6\u6570\u636e\uff1f", 
      "id": "https://www.v2ex.com/t/195725", 
      "date_published": "2015-06-03T02:51:17+00:00", 
      "content_html": "ngResource\u8fd8\u662f$http?"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/kokdemo", 
        "name": "kokdemo", 
        "avatar": "https://cdn.v2ex.com/avatar/73ea/e46e/12387_large.png?m=1644482710"
      }, 
      "url": "https://www.v2ex.com/t/193570", 
      "title": "\u4e3a\u4ec0\u4e48 ionic \u5728\u6d4f\u89c8\u5668\u548c\u5b89\u5353\u4e0a\u7f16\u8bd1\u51fa\u7684\u7248\u672c\u7684\u5e03\u5c40\u4e0d\u4e00\u6837\uff1f", 
      "id": "https://www.v2ex.com/t/193570", 
      "date_published": "2015-05-25T06:50:20+00:00", 
      "content_html": ""
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/pandada8", 
        "name": "pandada8", 
        "avatar": "https://cdn.v2ex.com/gravatar/b51f6bb76dbec981807180fe96730f19?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/189223", 
      "date_modified": "2015-05-07T08:29:31+00:00", 
      "content_html": "<p>\u6587\u6863\u4f3c\u4e4e\u8bf4\u53ef\u4ee5\u554a\u2026\u2026\u7136\u800c\u6211\u5728\u6211\u7684 MIUI \u4e0a\u5e76\u6ca1\u6709\u8bd5\u9a8c\u6210\u529f\u2026\u2026<br>\n\u987a\u4fbf\u670d\u52a1\u7aef<strong>\u4e0d\u53ef\u63a7</strong>\u800c\u4e14\u5bf9\u6e90 IP \u654f\u611f\u2026\u2026</p>\n", 
      "date_published": "2015-05-07T08:21:52+00:00", 
      "title": "Ionic \u53ef\u4ee5\u505a\u5230\u65e0\u89c6 CORS \u5417", 
      "id": "https://www.v2ex.com/t/189223"
    }, 
    {
      "author": {
        "url": "https://www.v2ex.com/member/DongHongfei", 
        "name": "DongHongfei", 
        "avatar": "https://cdn.v2ex.com/gravatar/96db473f796b704624b52ba2d72bed46?s=73&d=retro"
      }, 
      "url": "https://www.v2ex.com/t/185078", 
      "date_modified": "2015-04-20T15:22:01+00:00", 
      "content_html": "<p>\u62ff\u4e0b\u4e00\u8840\uff0c\u81ea\u7136\u8981\u6765\u63a8\u5e7f\u4e0b\u6211\u4eec\u7684ionic \u4e2d\u6587\u793e\u533a\u5566\uff0c\u560e\u560e~   </p>\n\n<h2>\u4f60\u4eec\u662f\u5e72\u5565\u7684\uff1f</h2>\n\n<p><a target=\"_blank\" rel=\"nofollow\" href=\"http://ionicframework.com\">Ionicframework</a> \u4e00\u6b3e\u514d\u8d39\u7684HTML5\u5f00\u6e90SDK\uff0c\u53ef\u4ee5\u7528\u6765\u5f00\u53d1\u6df7\u5408\u624b\u673a\u5e94\u7528\u3002</p>\n\n<p>Ionichina \u793e\u533a\u662f\u5168\u7403\u6700\u5927\u7684 Ionicframework \u4e2d\u6587\u5f00\u6e90\u6280\u672f\u793e\u533a\uff0c\u81f4\u529b\u4e8e Ionicframework \u5728\u4e2d\u56fd\u7684\u5b66\u4e60\u3001\u63a8\u5e7f\u3001\u7814\u7a76\u5de5\u4f5c\u3002</p>\n\n<p>Ionichina \u793e\u533a\u6b63\u5728\u52aa\u529b\u5efa\u8bbe\u4e2d\uff0c\u867d\u7136\u6211\u4eec\u8fd8\u4e0d\u725b\u00d7\uff0c\u4f46\u662f\u8bf7\u770b\u6211\u575a\u6bc5\u800c\u7eaf\u6d01\u7684\u53cc\u773c\uff0c\u76f8\u4fe1\u6211\u4eec\u6b63\u5728\u4e3a\u4e86\u725b\u00d7\u800c\u52aa\u529b~</p>\n\n<h2>\u4f60\u4eec\u5df2\u7ecf\u505a\u4e86\u5565\uff1f</h2>\n\n<p>Ionichina \u793e\u533a\u91c7\u7528cnodejs\u793e\u533a\u5f00\u6e90\u7684nodeclub\u6846\u67b6\u642d\u5efa\uff0c\u5e76\u4e14\u5df2\u7ecf\u5f97\u5230\u4e86\u4e03\u725b\u7684\u4e91\u5b58\u50a8\u548cUcloud\u7684\u670d\u52a1\u5668\u3001\u5e26\u5bbd\u8d5e\u52a9\u3002</p>\n\n<p>\u793e\u533a\u7533\u8bf7\u5230\u4e86 Ionic \u5728\u4e2d\u56fd\u5730\u533a\u7ec4\u7ec7\u8005\u7684\u8eab\u4efd\uff0c\u5b98\u65b9<a target=\"_blank\" rel=\"nofollow\" href=\"http://ionicframework.com/blog/ionic-worldwide/\">\u8fd9\u7bc7\u535a\u5ba2</a>\u91cc\u6709\u4ecb\u7ecd\uff0c\u5176\u4e2d\u63d0\u5230 <a target=\"_blank\" rel=\"nofollow\" href=\"https://twitter.com/IonicChina\">Ionic China</a>\u5c31\u662f\u672c\u793e\u533a\u5728\u7ef4\u62a4\u3002</p>\n\n<p>Ionichina \u793e\u533a\u8857\u9053\u529e\u4e8b\u5904 (<a target=\"_blank\" rel=\"nofollow\" href=\"http://ionichina.com/\">http://ionichina.com/</a>)<br>\n\u656c\u4e0a</p>\n", 
      "date_published": "2015-04-20T15:18:29+00:00", 
      "title": "\u8fd9\u4e2a\u8282\u70b9\u4e0b\u7684\u4e00\u8840\uff0c\u5f53\u7136\u8981\u7531\u6211\u62ff\u4e0b", 
      "id": "https://www.v2ex.com/t/185078"
    }
  ]
}