所以,我明白了.一切都安装好了.不过,我有一些问题,我希望能就如何阅读这些错误日志提供一些指导.我来自Rails,供参考.
首先,与http://mean.io/一起,npm install有一些问题,但更新和清除缓存会解决它.现在我在咕噜咕噜.我得到的第一件事是:
Express app started on port 3000
events.js:72
throw er; // Unhandled 'error' event
^
Error: failed to connect to [localhost:27017]
at null.<anonymous>(D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\server.js:540:74)
at EventEmitter.emit (events.js:106:17)
at null.<anonymous> (D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\connection_pool.js:140:15)
at EventEmitter.emit (events.js:98:17)
at Socket.<anonymous> (D:\Dropbox\Apps\mean_projects\first\node_modules\mongoose\node_modules\mongodb\lib\mongodb\connection\connection.js:478:10)
at Socket.EventEmitter.emit (events.js:95:17)
at net.js:441:14
at process._tickCallback (node.js:415:13)
22 Dec 21:03:14 - [nodemon] app crashed - waiting for file changes before starting...
Run Code Online (Sandbox Code Playgroud)
所以,我猜了一下,想也许我不得不手动启动mongo?mongod然后在一个新的控制台,grunt.Express app started on port 3000!活泉.在访问时http://localhost:3000/,我得到了这个怪物:
Error: D:\Dropbox\Apps\mean_projects\first\app\views\layouts\default.jade:1 > …Run Code Online (Sandbox Code Playgroud) 我想使用源更少的bootstrap文件构建我自己编译的css文件在我的项目中我使用的是mean.io堆栈.
如何在平均堆栈中集成更少?
我发现那里有很多工具
https://www.npmjs.org/package/grunt-bootstrap
https://github.com/sindresorhus/grunt-recess
https://github.com/gruntjs/grunt-contrib-less
所以我有点困惑^^
我也很满意一些教程
我最终使用了grunt-contrib-less
手动复制文件
/less/bootstrap.less /less/variables.less
在我的src文件夹中,即src/less
而不是我的grunt文件
less: {
bootstrap: {
options: {
strictMath: true,
sourceMap: true,
outputSourceFiles: true,
sourceMapURL: '<%= pkg.name %>.css.map',
sourceMapFilename: '<%= distdir %>/css/<%= pkg.name %>.css.map'
},
files: {
'<%= distdir %>/css/<%= pkg.name %>.css': '<%= src.src %>/less/bootstrap.less'
}
}
}
Run Code Online (Sandbox Code Playgroud)
在我的变数中.我能做到
//** Background color for `<body>`.
@body-bg: #F70E29;
//** Global text color on `<body>`.
@text-color: #F70E29;
Run Code Online (Sandbox Code Playgroud)
而且我有最酷的bg身体颜色:)
如何安全地删除内置的CRUD模块yo meanjs:crud-module <module-name>?
删除文件夹和服务器文件是否足够?
似乎有各种方法来安装Mean Stack(mean.io)的所有模块.但是,在c9.io中执行此操作的最佳方法是什么?我一直在尝试很多东西,但我似乎并没有把它们全部搞定.c9.io有NodeJs的专用工作区和安装Angular.js的方法,但我想要一切,快速,简单和快速!
注意:我尝试创建一个新工作区(Node.js),删除所有文件并运行以下链接中给出的命令:http: //learn.mean.io/#mean-installation
但是,我收到以下错误消息:
john@tut-04-mean:~/workspace $ cd app && npm install
> meanio@0.6.12 preinstall /home/ubuntu/workspace/app/node_modules/meanio
> node ./scripts/preinstall
npm WARN engine mean-cli@0.9.6: wanted: {"node":"0.10.x","npm":"2.1.x"} (current: {"node":"0.10.33","npm":"1.4.28"})
> mean-health@0.1.7 postinstall /home/ubuntu/workspace/app/node_modules/meanio/node_modules/mean-health
> node ./postinstall.js
> mean-cli@0.9.6 preinstall /home/ubuntu/workspace/app/node_modules/meanio/node_modules/mean-cli
> node ./scripts/preinstall
npm WARN optional dep failed, continuing fsevents@0.3.1
npm WARN engine hawk@0.10.2: wanted: {"node":"0.8.x"} (current: {"node":"0.10.33","npm":"1.4.28"})
npm WARN engine sntp@0.1.4: wanted: {"node":"0.8.x"} (current: {"node":"0.10.33","npm":"1.4.28"})
npm WARN engine cryptiles@0.1.3: wanted: {"node":"0.8.x"} (current: {"node":"0.10.33","npm":"1.4.28"})
npm WARN engine hoek@0.7.6: wanted: {"node":"0.8.x"} …Run Code Online (Sandbox Code Playgroud) 我脑子里有一个关于调试的问题,你看我写Javascript客户端的时候我可以去Chrome的控制台跟踪我的变量和对象等,看看我的代码发生了什么变化..我只是不能了解我们如何在服务器端(节点js)做同样的事情?假设我的前端向我的快递服务器提交了一个表单,我该如何检查req对象是否甚至收到它?我在哪里检查变量和对象(调试)服务器端代码?我绝对不能在浏览器控制台上这样做,因为代码存在并在服务器端执行,因此我无法通过浏览器的控制台访问服务器端对象等.
编辑 经过进一步的测试,我发现在这个应用程序和默认安装的mean.js上都会发生这种情况.我在Mac上本地运行它.当我使用"node server.js"运行任一app时,它们不会崩溃.
我正在使用带有grunt-nodemon的MEAN堆栈,并且当访问快速URL时节点崩溃.但它并不总是一致的.有时它可以工作,有时当URL被命中时节点崩溃而没有数据,有时我得到响应并且节点在之后立即崩溃.
浏览器控制台响应
http://localhost:8000/api/users net::ERR_CONNECTION_REFUSED
Run Code Online (Sandbox Code Playgroud)
终端输出:
Mongoose: users.insert({ firstname: 'mike', lastname: 'jones', email:'mike@gmail.com', role: 'admin', password: 'mike', _id: ObjectId("57485c16fc11894b96c28057"), created: new Date("Fri, 27 May 2016 14:39:18 GMT"), __v: 0 })
user.save success
node crash
[nodemon] app crashed - waiting for file changes before starting...
Run Code Online (Sandbox Code Playgroud)
在这种情况下,POST请求通过,添加了用户,然后节点崩溃,但有时它会在POST成功之前崩溃.节点偶尔也会在GET请求中崩溃.
gruntfile.js:
module.exports = function(grunt) {
// Load grunt tasks automatically
require('load-grunt-tasks')(grunt);
var pkg = grunt.file.readJSON('package.json');
var options = {
paths: {
app: 'app',
assets: 'app/assets',
dist: 'app/dist',
distAssets: 'app/dist/assets',
html: 'app/html',
htmlTmp: '.tmp/htmlsnapshot', …Run Code Online (Sandbox Code Playgroud) 我想更新一个数组值,但我不确定正确的方法,所以我尝试了下面的方法,但没有为我工作.
我的模型,我的模型中的儿童字段
childrens: {
type: Array,
default: ''
}
Run Code Online (Sandbox Code Playgroud)
我的查询,
Employeehierarchy.update({ _id: employeeparent._id} ,{ $set: {"$push": { "childrens": employee._id }} })
.exec(function (err, managerparent) {});
Run Code Online (Sandbox Code Playgroud)
谁能请我帮忙.谢谢.
我正在开发一个MEAN堆栈应用程序,我目前正在建立一个帐户系统.我已经看过几个关于身份验证的教程,都使用JWT.我还看到JWT是通过HTTP等非安全连接保护通信传输的好方法.
我已经设置了HTTPS来从我的Angular 4前端到我的NodeJS + Express后端进行通信,因此,想知道JWT是否有必要保护我的通信?
我正在学习全栈Angular4,并且想知道如何从一个组件到另一个组件的get调用中获取数据,这样我就可以使用{{data.name}}将数据中继到html页面?
我尝试将组件导入到另一个组件中,然后将一个空对象设置到保存数据的component.data中,但我得到一个空对象作为响应.
我究竟做错了什么?
更新:
我的共享服务:
import {Injectable} from "@angular/core";
import {Http, Response, Headers, RequestOptions} from "@angular/http";
import {Observable} from "rxjs/Rx";
import 'rxjs/add/operator/map';
@Injectable()
export class DataService {
apiData: any;
constructor(private http: Http) {}
fetchData() {
return this.http.get('/api/data').subscribe((data) => {
this.apiData = data.json();
console.log(this.apiData);
})
}
}
Run Code Online (Sandbox Code Playgroud)
目标组件:
import { Component } from "@angular/core";
import { AllTablesComponent } from '../tables/alltables.component';
import { DataService } from './../data.service';
@Component({
selector: 'app-target',
templateUrl: './target.component.html',
styleUrls: ['./target.component.css']
})
export class TargetComponent {
data: any;
constructor(private …Run Code Online (Sandbox Code Playgroud) 之后我在app.js文件服务器端有以下内容bodyParser
let dotEnv = require("dotenv");
dotEnv.load();
let express = require("express");
let app = express();
if (process.env.NODE_ENV === 'production') {
app = require('./public/web/server').app;
}
let passport = require("passport");
let server = require("http").Server(app);
let io = require("socket.io").listen(server);
// load intial configuration
require("./startup/initial-configuration")(app, io);
require("./server/config/socket")(io);
require("./server/config/database")(app, process.env.NODE_ENV);
require("./server/authentication/passport.local")(passport);
require("./server/authentication/passport.impersonate");
require("./startup/initial-routes")(app);
if (process.env.NODE_ENV === 'production') {
app.get('*.*', express.static('./public/web/browser', {
maxAge: '1y'
}));
app.get('*', (req, res) => {
res.render('index', {
req,
res
}, (err, html) => {
if (html) {
res.send(html);
} …Run Code Online (Sandbox Code Playgroud) mean-stack ×10
node.js ×6
angular ×3
express ×3
angularjs ×1
cloud9-ide ×1
components ×1
crud ×1
gruntjs ×1
javascript ×1
jwt ×1
mean.io ×1
meanjs ×1
mongodb ×1
mongoose ×1
pug ×1