2016-03-19 12 views
0

ich die folgende Fehlermeldung erhalten:Typeerror: require (...) ist keine Funktion

var userModel = require("./models/user.model.js")(); 
               ^

TypeError: require(...) is not a function 
at module.exports 
at Object.<anonymous> 
at Module._compile (module.js:435:26) 
at Object.Module._extensions..js (module.js:442:10) 
at Module.load (module.js:356:32) 
at Function.Module._load (module.js:311:12) 
at Function.Module.runMain (module.js:467:10) 
at startup (node.js:136:18) 

wenn ich require 2 Dateien versuchen, mit dem folgenden Code:

module.exports = function (app) { 
    "use strict"; 

    var userModel = require("./models/user.model.js")(); 
    var formModel = require("./models/form.model.js")(); 

    require("./services/user.service.server.js")(app, userModel); 
    require("./services/form.service.server.js")(app, formModel); 
    require("./services/field.service.server.js")(app, formModel); 
}; 

Ich bin neu und ich kann das Problem nicht verstehen. Kann mir bitte jemand das erklären und mir helfen, eine Lösung zu finden?

EDIT: Hinzufügen user.services.server.js:

module.exports = function(app, userModel) { 
"use strict"; 

app.post('/api/assignment/user', createUser); 
app.get('/api/assignment/user', findUsers); 
app.get('/api/assignment/user/:id', findUserById); 
app.put("/api/assignment/user/:userId", updateUserById); 
app.delete("/api/assignment/user/:userId", deleteUserById); 

function createUser(req, res) { 
    var newUser = userModel.createUser(req.body); 
    res.json(newUser); 
} 

function findUsers(req, res) { 
    if (req.query.username) { 
     if (req.query.password) { 
      findUserByCredentials(req, res); 
     } else { 
      findUserByUsername(req, res); 
     } 
    } else { 
     var users = userModel.findAllUsers(); 
     res.json(users); 
    } 
} 

function findUserById(req, res) { 
    var userId = parseInt(req.params.id); 
    var user = userModel.findUserById(userId); 
    res.json(user); 
} 

function findUserByUsername(req, res) { 
    var username = req.query.username; 
    var user = userModel.findUserByUsername(username); 
    res.json(user); 
} 

function findUserByCredentials(req, res) { 
    var credentials = { 
     username: req.query.username, 
     password: req.query.password 
    }; 
    var user = userModel.findUserByCredentials(credentials); 
    res.json(user); 
} 

function updateUserById(req, res) { 
    var userId = parseInt(req.params.id); 
    var newUser = userModel.updateUser(userId, req.body); 
    res.json(newUser); 
} 

function deleteUserById(req, res) { 
    var userId = parseInt(req.params.id); 
    userModel.deleteUser(userId); 
    res.send(200); 
} 

}(); 
+0

Das Problem ist in '" ./services/user.service.server.js "' - wie sieht dieser Code aus? – Pointy

+0

@Pointy Ich habe meine Frage bearbeitet, um diese Datei hinzuzufügen – anonn023432

+2

Ist der Fehler in 'var userModel = require (" ./ models/user.model.js ")();'? Haben Sie versucht, die Klammern zu entfernen? Also 'var userModel = require (" ./ models/user.model.js ");' und dann dasselbe für die nächste Zeile –

Antwort

2

Dies liegt daran, Sie () am Ende require hinzugefügt. Entferne sie.

Verwandte Themen