我开始使用 webapp 生成器构建一个应用程序,这非常感谢 grunt 的易用性以及服务器的实时重新加载。但是,我现在需要开始构建一个服务器端部件,该部件将从上述客户端应用程序发出针对它的请求。
至此,我有了一个使用 Express 的基本 server.js 起点。是否可以实时重新加载我的静态代码、SASS 重新编译,并通过我的 Express 服务器在同一主机和端口上提供服务器端代码?
我开始使用 webapp 生成器构建一个应用程序,这非常感谢 grunt 的易用性以及服务器的实时重新加载。但是,我现在需要开始构建一个服务器端部件,该部件将从上述客户端应用程序发出针对它的请求。
至此,我有了一个使用 Express 的基本 server.js 起点。是否可以实时重新加载我的静态代码、SASS 重新编译,并通过我的 Express 服务器在同一主机和端口上提供服务器端代码?
可以在端口 9000(Yeoman 默认)上运行 Grunt 服务器,在端口 35729 上运行 LiveReload,在端口 3000 上运行 Node 服务器。至于将它们全部托管在同一个端口上,您需要开发自己的守护程序任务来处理所有传入的信号,将它们重新路由到各个进程,这不是最佳的。
除非您要使用特定的前端框架,否则generator-webapp
非常适合开始项目。我会在结构方面推荐一些技巧:
使用grunt-contrib-jade插件将您的 HTML 编译为 Jade,以便在服务器端使用 partials。
将静态文件夹重新路由到app
开发和dist
生产期间(在 Coffeescript 中):
app.use express.static(path.join(__dirname, "../app"))