Page 197 - AngularJS权威教程
P. 197

18.3 安装 Express   177


                  现在,我们来运行一下这个应用,以确认一切都能按照我们设想的那样运行。只需用node                                          1
              可执行文件把它运行一下就可以了,如图18-2所示。

                  $ node app.js                                                                      2


                                                                                                     3


                                                                                                     4


                                                                                                     5



                                                                                                     6


                                                                                                     7
                                                图18-2 运行Express

                  如果我们在Web浏览器中打开URL http://localhost:3000,刚生成的Express应用的默认页就会                        8
              显示出来。
                  每次我们对app.js文件作修改,都需要停止服务器并且重启。在开发过程中,这个过程太麻                                        9
              烦了,所以我们建议不使用node.js,而是使用nodemon服务器。

                  要安装nodemon,需再次使用npm:                                                               10
                  $ npm install --save-dev nodemon
                                                                                                     11
                          --save-dev标记告诉npm把这个包保存在package.json中的devDependencies段
                         落。我们推荐使用这种做法,因为当团队有多个开发人员时,这会有所帮助:
                         可以确保整个团队对代码库都有正确的依赖项。                                                       12

                  我们可以不用node app.js启动应用,而用下面的代码替换它:                                                  13

                  $ nodemon app.js
                  每次对app.js文件作修改并且保存时,nodemon会自动重启Node应用。                                            14
                  该应用在app.js中启动。在app.js文件中,有两个重要的组件值得注意:提供静态文件的静态
              路径和执行的路由(以及如何执行的)。                                                                     15

                  // ...
                  app.use(express.methodOverride());                                                 16
                  app.use(app.router);
                  // 第一行
                  app.use(express.static(path.join(__dirname, 'public')));                           17
                  // ...
                  app.get('/', routes.index);
                  app.get('/users', user.list);
                  // ...                                                                             18
   192   193   194   195   196   197   198   199   200   201   202