{"id":2085,"date":"2017-03-15T07:50:37","date_gmt":"2017-03-15T07:50:37","guid":{"rendered":"http:\/\/myprojects.advchaweb.com\/?p=2085"},"modified":"2017-03-15T08:16:21","modified_gmt":"2017-03-15T08:16:21","slug":"loopback-angular-example-todo","status":"publish","type":"post","link":"https:\/\/myprojects.advchaweb.com\/index.php\/2017\/03\/15\/loopback-angular-example-todo\/","title":{"rendered":"Loopback Angular Example: Todo"},"content":{"rendered":"<p>Ref: <a href=\"https:\/\/github.com\/strongloop\/loopback-example-angular\" target=\"_blank\">https:\/\/github.com\/strongloop\/loopback-example-angular<\/a><\/p>\n<p>Clone the example<\/p>\n<pre class=\"lang:default decode:true \">teddy@teddy-K43SJ:~$ cd Documents\/node\/\r\nteddy@teddy-K43SJ:~\/Documents\/node$ git clone https:\/\/github.com\/strongloop\/loopback-example-angular.git\r\nCloning into 'loopback-example-angular'...\r\nremote: Counting objects: 237, done.\r\nremote: Total 237 (delta 0), reused 0 (delta 0), pack-reused 237\r\nReceiving objects: 100% (237\/237), 59.32 KiB | 0 bytes\/s, done.\r\nResolving deltas: 100% (111\/111), done.\r\nChecking connectivity... done.<\/pre>\n<p>Go to the dir<\/p>\n<pre class=\"lang:default decode:true \">teddy@teddy-K43SJ:~\/Documents\/node$ cd loopback-example-angular\/<\/pre>\n<p>Use npm to install the dependencies<\/p>\n<pre class=\"lang:default decode:true \">teddy@teddy-K43SJ:~\/Documents\/node\/loopback-example-angular$ npm install\r\n\r\n&gt; loopback-example-angular@1.0.0 postinstall \/home\/teddy\/Documents\/node\/loopback-example-angular\r\n&gt; bower install\r\n\r\nbower not-cached    https:\/\/github.com\/angular\/bower-angular-resource.git#~1.3.15\r\nbower resolve       https:\/\/github.com\/angular\/bower-angular-resource.git#~1.3.15\r\nbower cached        https:\/\/github.com\/twbs\/bootstrap.git#3.3.7\r\nbower validate      3.3.7 against https:\/\/github.com\/twbs\/bootstrap.git#~3.3.4\r\nbower cached        https:\/\/github.com\/angular-ui\/angular-ui-router-bower.git#0.2.18\r\nbower validate      0.2.18 against https:\/\/github.com\/angular-ui\/angular-ui-router-bower.git#~0.2.13\r\nbower cached        https:\/\/github.com\/angular\/bower-angular.git#1.6.3\r\nbower validate      1.6.3 against https:\/\/github.com\/angular\/bower-angular.git#^1.0.8\r\nbower cached        https:\/\/github.com\/jquery\/jquery-dist.git#3.1.1\r\nbower validate      3.1.1 against https:\/\/github.com\/jquery\/jquery-dist.git#1.9.1 - 3\r\nbower download      https:\/\/github.com\/angular\/bower-angular-resource\/archive\/v1.3.20.tar.gz\r\nbower extract       angular-resource#~1.3.15 archive.tar.gz\r\nbower resolved      https:\/\/github.com\/angular\/bower-angular-resource.git#1.3.20\r\nbower not-cached    https:\/\/github.com\/angular\/bower-angular.git#1.3.20\r\nbower resolve       https:\/\/github.com\/angular\/bower-angular.git#1.3.20\r\nbower download      https:\/\/github.com\/angular\/bower-angular\/archive\/v1.3.20.tar.gz\r\nbower extract       angular#1.3.20 archive.tar.gz\r\nbower resolved      https:\/\/github.com\/angular\/bower-angular.git#1.3.20\r\nbower install       angular-ui-router#0.2.18\r\nbower install       bootstrap#3.3.7\r\nbower install       jquery#3.1.1\r\nbower install       angular#1.3.20\r\nbower install       angular-resource#1.3.20\r\n\r\nangular-ui-router#0.2.18 client\/vendor\/angular-ui-router\r\n\u2514\u2500\u2500 angular#1.3.20\r\n\r\nbootstrap#3.3.7 client\/vendor\/bootstrap\r\n\u2514\u2500\u2500 jquery#3.1.1\r\n\r\njquery#3.1.1 client\/vendor\/jquery\r\n\r\nangular#1.3.20 client\/vendor\/angular\r\n\r\nangular-resource#1.3.20 client\/vendor\/angular-resource\r\n\u2514\u2500\u2500 angular#1.3.20\r\nloopback-example-angular@1.0.0 \/home\/teddy\/Documents\/node\/loopback-example-angular\r\n\u251c\u2500\u2500 bower@1.8.0 \r\n\u251c\u2500\u252c compression@1.6.2 \r\n\u2502 \u251c\u2500\u252c accepts@1.3.3 \r\n\u2502 \u2502 \u251c\u2500\u2500 mime-types@2.1.14 \r\n\u2502 \u2502 \u2514\u2500\u2500 negotiator@0.6.1 \r\n\u2502 \u251c\u2500\u2500 bytes@2.3.0 \r\n\u2502 \u251c\u2500\u252c compressible@2.0.9 \r\n\u2502 \u2502 \u2514\u2500\u2500 mime-db@1.26.0 \r\n\u2502 \u251c\u2500\u252c debug@2.2.0 \r\n\u2502 \u2502 \u2514\u2500\u2500 ms@0.7.1 \r\n\u2502 \u251c\u2500\u2500 on-headers@1.0.1 \r\n\u2502 \u2514\u2500\u2500 vary@1.1.0 \r\n\u251c\u2500\u2500 cors@2.8.1 \r\n\u251c\u2500\u252c jshint@2.9.4 \r\n\u2502 \u251c\u2500\u2500 cli@1.0.1 \r\n\u2502 \u251c\u2500\u252c console-browserify@1.1.0 \r\n\u2502 \u2502 \u2514\u2500\u2500 date-now@0.1.4 \r\n\u2502 \u251c\u2500\u2500 exit@0.1.2 \r\n\u2502 \u251c\u2500\u252c htmlparser2@3.8.3 \r\n\u2502 \u2502 \u251c\u2500\u2500 domelementtype@1.3.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 domhandler@2.3.0 \r\n\u2502 \u2502 \u251c\u2500\u252c domutils@1.5.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c dom-serializer@0.1.0 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 domelementtype@1.1.3 \r\n\u2502 \u2502 \u251c\u2500\u2500 entities@1.0.0 \r\n\u2502 \u2502 \u2514\u2500\u252c readable-stream@1.1.14 \r\n\u2502 \u2502   \u251c\u2500\u2500 core-util-is@1.0.2 \r\n\u2502 \u2502   \u251c\u2500\u2500 isarray@0.0.1 \r\n\u2502 \u2502   \u2514\u2500\u2500 string_decoder@0.10.31 \r\n\u2502 \u251c\u2500\u2500 lodash@3.7.0 \r\n\u2502 \u251c\u2500\u252c minimatch@3.0.3 \r\n\u2502 \u2502 \u2514\u2500\u252c brace-expansion@1.1.6 \r\n\u2502 \u2502   \u251c\u2500\u2500 balanced-match@0.4.2 \r\n\u2502 \u2502   \u2514\u2500\u2500 concat-map@0.0.1 \r\n\u2502 \u251c\u2500\u2500 shelljs@0.3.0 \r\n\u2502 \u2514\u2500\u2500 strip-json-comments@1.0.4 \r\n\u251c\u2500\u252c loopback@3.4.0 \r\n\u2502 \u251c\u2500\u252c async@2.1.5 \r\n\u2502 \u2502 \u2514\u2500\u2500 lodash@4.17.4 \r\n\u2502 \u251c\u2500\u2500 bcryptjs@2.4.3 \r\n\u2502 \u251c\u2500\u2500 bluebird@3.5.0 \r\n\u2502 \u251c\u2500\u252c body-parser@1.17.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 bytes@2.4.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 content-type@1.0.2 \r\n\u2502 \u2502 \u251c\u2500\u252c debug@2.6.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 ms@0.7.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 http-errors@1.6.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 iconv-lite@0.4.15 \r\n\u2502 \u2502 \u251c\u2500\u252c on-finished@2.3.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 ee-first@1.1.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 qs@6.4.0 \r\n\u2502 \u2502 \u251c\u2500\u252c raw-body@2.2.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 bytes@2.4.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 unpipe@1.0.0 \r\n\u2502 \u2502 \u2514\u2500\u252c type-is@1.6.14 \r\n\u2502 \u2502   \u2514\u2500\u2500 media-typer@0.3.0 \r\n\u2502 \u251c\u2500\u2500 canonical-json@0.0.4 \r\n\u2502 \u251c\u2500\u2500 depd@1.1.0 \r\n\u2502 \u251c\u2500\u2500 ejs@2.5.6 \r\n\u2502 \u251c\u2500\u252c express@4.15.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 array-flatten@1.1.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 content-disposition@0.5.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 cookie@0.3.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 cookie-signature@1.0.6 \r\n\u2502 \u2502 \u251c\u2500\u252c debug@2.6.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 ms@0.7.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 encodeurl@1.0.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 escape-html@1.0.3 \r\n\u2502 \u2502 \u251c\u2500\u252c finalhandler@1.0.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c debug@2.6.1 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 ms@0.7.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 merge-descriptors@1.0.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 methods@1.1.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 path-to-regexp@0.1.7 \r\n\u2502 \u2502 \u251c\u2500\u252c proxy-addr@1.1.3 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 forwarded@0.1.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 ipaddr.js@1.2.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 range-parser@1.2.0 \r\n\u2502 \u2502 \u251c\u2500\u252c send@0.15.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 debug@2.6.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 destroy@1.0.4 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 mime@1.3.4 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 ms@0.7.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 serve-static@1.12.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 setprototypeof@1.0.3 \r\n\u2502 \u2502 \u251c\u2500\u2500 statuses@1.3.1 \r\n\u2502 \u2502 \u2514\u2500\u2500 utils-merge@1.0.0 \r\n\u2502 \u251c\u2500\u2500 inflection@1.12.0 \r\n\u2502 \u251c\u2500\u2500 isemail@1.2.0 \r\n\u2502 \u251c\u2500\u2500 loopback-connector-remote@3.1.1 \r\n\u2502 \u251c\u2500\u252c loopback-datasource-juggler@3.2.0 \r\n\u2502 \u2502 \u251c\u2500\u252c loopback-connector@3.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 async@1.5.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c msgpack5@3.4.1 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 bl@1.2.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 shortid@2.2.8 \r\n\u2502 \u2502 \u251c\u2500\u2500 traverse@0.6.6 \r\n\u2502 \u2502 \u2514\u2500\u2500 uuid@3.0.1 \r\n\u2502 \u251c\u2500\u252c loopback-phase@1.4.1 \r\n\u2502 \u2502 \u2514\u2500\u2500 async@0.9.2 \r\n\u2502 \u251c\u2500\u252c nodemailer@2.7.2 \r\n\u2502 \u2502 \u251c\u2500\u252c libmime@3.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 libbase64@0.1.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 libqp@1.1.0 \r\n\u2502 \u2502 \u251c\u2500\u252c mailcomposer@4.0.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c buildmail@4.0.1 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 addressparser@1.0.1 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 punycode@1.4.1 \r\n\u2502 \u2502 \u251c\u2500\u252c nodemailer-direct-transport@3.3.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c smtp-connection@2.12.0 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u252c httpntlm@1.6.1 \r\n\u2502 \u2502 \u2502     \u251c\u2500\u2500 httpreq@0.4.23 \r\n\u2502 \u2502 \u2502     \u2514\u2500\u2500 underscore@1.7.0 \r\n\u2502 \u2502 \u251c\u2500\u252c nodemailer-shared@1.1.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 nodemailer-fetch@1.6.0 \r\n\u2502 \u2502 \u251c\u2500\u252c nodemailer-smtp-pool@2.8.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 nodemailer-wellknown@0.1.10 \r\n\u2502 \u2502 \u251c\u2500\u2500 nodemailer-smtp-transport@2.7.2 \r\n\u2502 \u2502 \u2514\u2500\u252c socks@1.1.9 \r\n\u2502 \u2502   \u251c\u2500\u2500 ip@1.1.5 \r\n\u2502 \u2502   \u2514\u2500\u2500 smart-buffer@1.1.15 \r\n\u2502 \u251c\u2500\u2500 nodemailer-stub-transport@1.1.0 \r\n\u2502 \u251c\u2500\u2500 stable@0.1.5 \r\n\u2502 \u251c\u2500\u252c strong-globalize@2.8.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 async@1.5.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 esprima@2.7.3 \r\n\u2502 \u2502 \u251c\u2500\u2500 estraverse@4.2.0 \r\n\u2502 \u2502 \u251c\u2500\u252c g11n-pipeline@1.3.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c swagger-client@2.1.32 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 btoa@1.1.2 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 cookiejar@2.1.0 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u252c js-yaml@3.8.2 \r\n\u2502 \u2502 \u2502   \u2502 \u2514\u2500\u2500 esprima@3.1.3 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 lodash-compat@3.10.2 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 q@1.4.1 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u252c superagent@2.3.0 \r\n\u2502 \u2502 \u2502     \u251c\u2500\u2500 component-emitter@1.2.1 \r\n\u2502 \u2502 \u2502     \u251c\u2500\u252c form-data@1.0.0-rc4 \r\n\u2502 \u2502 \u2502     \u2502 \u2514\u2500\u2500 async@1.5.2 \r\n\u2502 \u2502 \u2502     \u2514\u2500\u2500 formidable@1.1.1 \r\n\u2502 \u2502 \u251c\u2500\u252c htmlparser2@3.9.2 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 entities@1.1.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c readable-stream@2.2.5 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 buffer-shims@1.0.0 \r\n\u2502 \u2502 \u2502   \u251c\u2500\u2500 isarray@1.0.0 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 process-nextick-args@1.0.7 \r\n\u2502 \u2502 \u251c\u2500\u252c md5@2.2.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 charenc@0.0.2 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 crypt@0.0.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 is-buffer@1.1.5 \r\n\u2502 \u2502 \u251c\u2500\u252c mkdirp@0.5.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 minimist@0.0.8 \r\n\u2502 \u2502 \u251c\u2500\u252c mktmpdir@0.1.1 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 rimraf@2.2.8 \r\n\u2502 \u2502 \u251c\u2500\u2500 optional@0.1.3 \r\n\u2502 \u2502 \u251c\u2500\u252c os-locale@1.4.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u252c lcid@1.0.0 \r\n\u2502 \u2502 \u2502   \u2514\u2500\u2500 invert-kv@1.0.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 posix-getopt@1.2.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 word-count@0.2.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 xtend@4.0.1 \r\n\u2502 \u2502 \u2514\u2500\u252c yamljs@0.2.8 \r\n\u2502 \u2502   \u2514\u2500\u2500 argparse@1.0.9 \r\n\u2502 \u251c\u2500\u252c strong-remoting@3.1.1 \r\n\u2502 \u2502 \u251c\u2500\u2500 escape-string-regexp@1.0.5 \r\n\u2502 \u2502 \u251c\u2500\u2500 eventemitter2@2.2.2 \r\n\u2502 \u2502 \u251c\u2500\u252c jayson@1.2.2 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c commander@1.3.2 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 keypress@0.1.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 eyes@0.1.8 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c JSONStream@1.0.3 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 jsonparse@1.0.0 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 lodash@3.6.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 js2xmlparser@1.0.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 loopback-datatype-geopoint@1.0.0 \r\n\u2502 \u2502 \u251c\u2500\u252c mux-demux@3.7.9 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 duplex@1.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 json-buffer@2.0.11 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c msgpack-stream@0.0.12 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u252c bops@0.0.6 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 base64-js@0.0.2 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 to-utf8@0.0.1 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 msgpack-js@0.3.0 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 through@2.3.4 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c stream-combiner@0.0.2 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 duplexer@0.0.4 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 stream-serializer@1.1.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 xtend@1.0.3 \r\n\u2502 \u2502 \u251c\u2500\u252c request@2.81.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 aws-sign2@0.6.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 aws4@1.6.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 caseless@0.12.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c combined-stream@1.0.5 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 delayed-stream@1.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 extend@3.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 forever-agent@0.6.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c form-data@2.1.2 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 asynckit@0.4.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c har-validator@4.2.1 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u252c ajv@4.11.5 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 co@4.6.0 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2514\u2500\u252c json-stable-stringify@1.0.1 \r\n\u2502 \u2502 \u2502 \u2502 \u2502   \u2514\u2500\u2500 jsonify@0.0.0 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 har-schema@1.0.5 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c hawk@3.1.3 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 boom@2.10.1 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 cryptiles@2.0.5 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 hoek@2.16.3 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 sntp@1.0.9 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u252c http-signature@1.1.1 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 assert-plus@0.2.0 \r\n\u2502 \u2502 \u2502 \u2502 \u251c\u2500\u252c jsprim@1.4.0 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 assert-plus@1.0.0 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 extsprintf@1.0.2 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u251c\u2500\u2500 json-schema@0.2.3 \r\n\u2502 \u2502 \u2502 \u2502 \u2502 \u2514\u2500\u2500 verror@1.3.6 \r\n\u2502 \u2502 \u2502 \u2502 \u2514\u2500\u252c sshpk@1.11.0 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 asn1@0.2.3 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 assert-plus@1.0.0 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 bcrypt-pbkdf@1.0.1 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u252c dashdash@1.14.1 \r\n\u2502 \u2502 \u2502 \u2502   \u2502 \u2514\u2500\u2500 assert-plus@1.0.0 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 ecc-jsbn@0.1.1 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u252c getpass@0.1.6 \r\n\u2502 \u2502 \u2502 \u2502   \u2502 \u2514\u2500\u2500 assert-plus@1.0.0 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 jodid25519@1.0.2 \r\n\u2502 \u2502 \u2502 \u2502   \u251c\u2500\u2500 jsbn@0.1.1 \r\n\u2502 \u2502 \u2502 \u2502   \u2514\u2500\u2500 tweetnacl@0.14.5 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 is-typedarray@1.0.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 isstream@0.1.2 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 json-stringify-safe@5.0.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 oauth-sign@0.8.2 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 performance-now@0.2.0 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 safe-buffer@5.0.1 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 stringstream@0.0.5 \r\n\u2502 \u2502 \u2502 \u251c\u2500\u2500 tough-cookie@2.3.2 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 tunnel-agent@0.6.0 \r\n\u2502 \u2502 \u251c\u2500\u252c sse@0.0.6 \r\n\u2502 \u2502 \u2502 \u2514\u2500\u2500 options@0.0.6 \r\n\u2502 \u2502 \u2514\u2500\u252c xml2js@0.4.17 \r\n\u2502 \u2502   \u251c\u2500\u2500 sax@1.2.2 \r\n\u2502 \u2502   \u2514\u2500\u2500 xmlbuilder@4.2.1 \r\n\u2502 \u251c\u2500\u2500 uid2@0.0.3 \r\n\u2502 \u2514\u2500\u252c underscore.string@3.3.4 \r\n\u2502   \u251c\u2500\u2500 sprintf-js@1.0.3 \r\n\u2502   \u2514\u2500\u2500 util-deprecate@1.0.2 \r\n\u251c\u2500\u252c loopback-boot@2.23.0 \r\n\u2502 \u251c\u2500\u2500 async@0.9.2 \r\n\u2502 \u251c\u2500\u2500 commondir@0.0.1 \r\n\u2502 \u251c\u2500\u2500 lodash@3.10.1 \r\n\u2502 \u251c\u2500\u2500 semver@4.3.6 \r\n\u2502 \u2514\u2500\u2500 toposort@0.2.12 \r\n\u251c\u2500\u252c loopback-component-explorer@2.7.0 \r\n\u2502 \u251c\u2500\u2500 lodash@3.10.1 \r\n\u2502 \u251c\u2500\u252c loopback-swagger@2.9.0 \r\n\u2502 \u2502 \u251c\u2500\u2500 async@1.5.2 \r\n\u2502 \u2502 \u251c\u2500\u2500 lodash@3.10.1 \r\n\u2502 \u2502 \u2514\u2500\u2500 underscore.string@2.3.3 \r\n\u2502 \u2514\u2500\u2500 strong-swagger-ui@21.0.2 \r\n\u251c\u2500\u252c serve-favicon@2.4.1 \r\n\u2502 \u251c\u2500\u2500 etag@1.8.0 \r\n\u2502 \u251c\u2500\u2500 fresh@0.5.0 \r\n\u2502 \u251c\u2500\u2500 ms@0.7.2 \r\n\u2502 \u2514\u2500\u2500 parseurl@1.3.1 \r\n\u251c\u2500\u252c strong-error-handler@1.2.1 \r\n\u2502 \u251c\u2500\u2500 http-status@0.2.5 \r\n\u2502 \u2514\u2500\u252c js2xmlparser@2.0.2 \r\n\u2502   \u2514\u2500\u2500 xmlcreate@0.1.1 \r\n\u2514\u2500\u252c tape@4.6.3 \r\n  \u251c\u2500\u2500 deep-equal@1.0.1 \r\n  \u251c\u2500\u2500 defined@1.0.0 \r\n  \u251c\u2500\u252c for-each@0.3.2 \r\n  \u2502 \u2514\u2500\u2500 is-function@1.0.1 \r\n  \u251c\u2500\u2500 function-bind@1.1.0 \r\n  \u251c\u2500\u252c glob@7.1.1 \r\n  \u2502 \u251c\u2500\u2500 fs.realpath@1.0.0 \r\n  \u2502 \u251c\u2500\u252c inflight@1.0.6 \r\n  \u2502 \u2502 \u2514\u2500\u2500 wrappy@1.0.2 \r\n  \u2502 \u251c\u2500\u2500 once@1.4.0 \r\n  \u2502 \u2514\u2500\u2500 path-is-absolute@1.0.1 \r\n  \u251c\u2500\u2500 has@1.0.1 \r\n  \u251c\u2500\u2500 inherits@2.0.3 \r\n  \u251c\u2500\u2500 minimist@1.2.0 \r\n  \u251c\u2500\u2500 object-inspect@1.2.1 \r\n  \u251c\u2500\u2500 resolve@1.1.7 \r\n  \u251c\u2500\u2500 resumer@0.0.0 \r\n  \u251c\u2500\u252c string.prototype.trim@1.1.2 \r\n  \u2502 \u251c\u2500\u252c define-properties@1.1.2 \r\n  \u2502 \u2502 \u251c\u2500\u2500 foreach@2.0.5 \r\n  \u2502 \u2502 \u2514\u2500\u2500 object-keys@1.0.11 \r\n  \u2502 \u2514\u2500\u252c es-abstract@1.7.0 \r\n  \u2502   \u251c\u2500\u252c es-to-primitive@1.1.1 \r\n  \u2502   \u2502 \u251c\u2500\u2500 is-date-object@1.0.1 \r\n  \u2502   \u2502 \u2514\u2500\u2500 is-symbol@1.0.1 \r\n  \u2502   \u251c\u2500\u2500 is-callable@1.1.3 \r\n  \u2502   \u2514\u2500\u2500 is-regex@1.0.4 \r\n  \u2514\u2500\u2500 through@2.3.8<\/pre>\n<p>Run node server with &#8216;node .&#8217;. But I got this error:<\/p>\n<pre class=\"lang:default decode:true \">teddy@teddy-K43SJ:~\/Documents\/node\/loopback-example-angular$ node .\r\nevents.js:160\r\n      throw er; \/\/ Unhandled 'error' event\r\n      ^\r\n\r\nError: listen EADDRINUSE 0.0.0.0:3000\r\n    at Object.exports._errnoException (util.js:1026:11)\r\n    at exports._exceptionWithHostPort (util.js:1049:20)\r\n    at Server._listen2 (net.js:1257:14)\r\n    at listen (net.js:1293:10)\r\n    at net.js:1403:9\r\n    at _combinedTickCallback (internal\/process\/next_tick.js:77:11)\r\n    at process._tickCallback (internal\/process\/next_tick.js:98:9)\r\n    at Module.runMain (module.js:606:11)\r\n    at run (bootstrap_node.js:394:7)\r\n    at startup (bootstrap_node.js:149:9)\r\n    at bootstrap_node.js:509:3<\/pre>\n<p>SOLUTION: Sorry, I got this problem because I run another node sever in another and I forgot to turn it off. After making sure only one node server running, everything run well!<\/p>\n<p>Open your browser then type http:\/\/localhost:3000\/ or http:\/\/localhost:3000\/index.html. Here is the result and try to add a few list.<a href=\"http:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-large wp-image-2086\" src=\"http:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example-1024x325.png\" alt=\"\" width=\"840\" height=\"267\" srcset=\"https:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example-1024x325.png 1024w, https:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example-300x95.png 300w, https:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example-768x243.png 768w, https:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example-1200x380.png 1200w, https:\/\/myprojects.advchaweb.com\/wp-content\/uploads\/2017\/03\/loopback_example.png 1205w\" sizes=\"auto, (max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a>NEXT: HOW TO STORE THE LIST IN DB???<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ref: https:\/\/github.com\/strongloop\/loopback-example-angular Clone the example teddy@teddy-K43SJ:~$ cd Documents\/node\/ teddy@teddy-K43SJ:~\/Documents\/node$ git clone https:\/\/github.com\/strongloop\/loopback-example-angular.git Cloning into &#8216;loopback-example-angular&#8217;&#8230; remote: Counting objects: 237, done. remote: Total 237 (delta 0), reused 0 (delta 0), pack-reused 237 Receiving objects: 100% (237\/237), 59.32 KiB | 0 bytes\/s, done. Resolving deltas: 100% (111\/111), done. Checking connectivity&#8230; done. Go to the dir teddy@teddy-K43SJ:~\/Documents\/node$ cd &hellip; <a href=\"https:\/\/myprojects.advchaweb.com\/index.php\/2017\/03\/15\/loopback-angular-example-todo\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Loopback Angular Example: Todo&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[60,13],"tags":[],"class_list":["post-2085","post","type-post","status-publish","format-standard","hentry","category-node","category-tutorial"],"_links":{"self":[{"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/posts\/2085","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/comments?post=2085"}],"version-history":[{"count":2,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/posts\/2085\/revisions"}],"predecessor-version":[{"id":2088,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/posts\/2085\/revisions\/2088"}],"wp:attachment":[{"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/media?parent=2085"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/categories?post=2085"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/myprojects.advchaweb.com\/index.php\/wp-json\/wp\/v2\/tags?post=2085"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}