【发布时间】:2016-07-07 22:00:46
【问题描述】:
我正在尝试使用 Node、Express、Angular2(数据库、MongoDB 或 SQL)设置工作区
但我不确定如何正确设置它。到目前为止我的文件结构是这样的,我打算把前端放在public文件夹下。
── package.json
├── public
├── routes
│ └── test.js
├── server.js
└── views
到目前为止,我的 server.js 看起来像这样
var express = require('express');
var mysql = require('mysql');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var path = require('path');
var lel = require('./routes/test');
var app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false}));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/api/', test);
app.use(function(req, res, next) {
// error handling
});
var server = app.listen(3000, function() {
// shows the connection etc
});
module.exports = app;
我的 test.js 是我在 /api/test 下处理 API 调用的地方。
这就是我的 package.json 的样子,带有一个用于 npm 的脚本,它将使用 npm start 启动服务器以及所有必需的依赖项,可以使用 npm install 下载
{
"name": "testing",
"version": "0.1.0",
"description": "-",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node server.js"
},
"author": "-",
"license": "-",
"dependencies": {
"body-parser": "^1.15.0",
"cookie-parser": "^1.4.1",
"ejs": "^2.4.1",
"express": "^4.13.4",
"morgan": "^1.7.0",
"mysql": "^2.10.2",
"path": "^0.12.7"
}
}
现在我的问题是如何添加 Angular2 以在公共环境下正常工作,以便它们在 npm start 一起启动。
我一直在关注 Angulars 文档站点上的快速入门,并注意到他们使用 lite-server,但这对于 node/express 不是必需的,对吗?添加 Angular2 后,我的 package.json 应该是什么样子。比如这样:
├── package.json
├── public
│ ├── app
│ │ ├── app.component.js
│ │ └── main.js
│ └── index.html
├── routes
│ └── test.js
├── server.js
└── views
如果使用 Angular2 还为时过早,那么我有同样的问题,但使用 Angular1.X,或者也许将 Angular2 与 TS 一起使用更好?
【问题讨论】:
-
看看这个 github repo:github.com/auth0/angular2-authentication-sample
-
我使用 bower 在我的项目文件夹中安装了 angularjs v1.52。我在项目文件夹 npm install -g bower , bower install angularjs 中执行了以下命令
-
嗨,Sigils,如果有您遵循的任何文档进行设置,您能否分享一下。我刚刚踏入这个领域并正在寻找一个
标签: javascript angularjs node.js angular