小编Ahm*_*lem的帖子

Angular.js:如何为所有app控制器调用一次服务

我不知道这是否是Angular概念中的一个或可能做的,但我有一个调用用户信息的服务(name,id,age,...):

.factory('me', function($resource, API_URL, $q) {
    return {
        getUser: function() {
            var deferred = $q.defer();
            var url = API_URL + 'api/me';
            $resource(url)
                .get(function(user) {
                    deferred.resolve(user);
                }, function(response) {
                    deferred.reject(response);
                });
            return deferred.promise;
        }
    };
})
Run Code Online (Sandbox Code Playgroud)

我在很多地方使用这项服务controllers来获取user数据并使用它与其他http电话一起发送.例如在我的newItemCtrl

.controller('newItemCtrl', function($scope, $http, API_URL, me) {
Run Code Online (Sandbox Code Playgroud)

me在许多其他控制器中调用了该服务

我想知道有没有办法只调用一次这个服务,并在所有控制器中使用它,而不是在每个控制器中使用x次

angularjs

2
推荐指数
1
解决办法
2995
查看次数

将数据保存到 mongoDB 时出现 500 内部服务器错误

我有一个简单的客户端,将数据发送到服务器,服务器将数据保存到 mongoDB 中。

当我将数据发送到发布请求时,我在正文中找到了数据,但在保存此数据的过程中,我收到内部服务器错误。

注意:我使用 mongoLab 托管我的 mongoDB

这是我在服务器控制台上得到的。

App listeining on 3000
{ email: 'm.email@gmail.com', password: '123456' }
TypeError: object is not a function
index.js:25:16
Run Code Online (Sandbox Code Playgroud)

这是我的服务器的代码:

var express = require('express');
var bodyParser = require('body-Parser');
var mongoose = require('mongoose');

var app = express();

app.use(bodyParser.json());

// set up CORS resource sharing
app.use(function(req, res, next){
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
    res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization');
    next();
})
//the User Model.
var User = mongoose.model('User',{
    email: String,
    password: String
})
app.post('/register', function(req, res){
    var user = …
Run Code Online (Sandbox Code Playgroud)

mongodb node.js mlab angularjs

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

angularjs ×2

mlab ×1

mongodb ×1

node.js ×1