TypeError: Cannot read property ‚findAll‘ undefined

Ich bin der Entwicklung einer web-app, die verwendet angularjs, nodejs, und postgresql. Ich habe zwei Tabellen in meiner Datenbank, für Bestandsaufnahme und die andere für den client. Kombinierte ich meine index.js Dateien, die in meinen routes Ordner, in denen beide Tabellen haben einen findAll-Funktion. Wenn ich die beiden Verweise für Tabellen in der index.js nur arbeitet man in einer Zeit. Hier ist die Vorlage, die beide Tabellen verwenden, die enthält findAll:

exports.getobjects = function(req, res) {
models.Object.findAll().then(function(objectss){
    res.json(objects);
});
};

Hat jemand das getan, was ich zu tun versuche?
UPDATE: Hier ist die gesamte index.js Datei :

/*
* GET home page.
*/

var models = require("../models");

exports.index = function(req, res) {
res.render('index', {
    title : 'title'
 });
 };
 /* clients */
 exports.getclients = function(req, res) {
 models.Client.findAll().then(function(clients){
    res.json(clients);
});
};

exports.saveclients = function(req, res) {
models.Client.create({
    name: req.body.name,
    ssn: req.body.ssn,
    dln: req.body.dln,
    dls: req.body.dls,
    zip: req.body.zip,
    email: req.body.email,
    notes: req.body.notes,     
}).then(function(clients){
    res.json(clients.dataValues);
}).catch(function(error){
    console.log("ops: " + error);
    res.status(500).json({ error: 'error' });
});
};

/*inventory*/
exports.getunits = function(req, res) {
models.Unit.findAll().then(function(units){
    res.json(units);

});
};

exports.saveunits = function(req, res) {
models.Unit.create({
    name: req.body.text,
    quant: reg.body.quant                        
}).then(function(units){
    res.json(units.dataValues);
}).catch(function(error){
    console.log("ops: " + error);
    res.status(500).json({ error: 'error' });
});
};
  • können Sie zählen die index.js code? Eine Sache, die ich abgeholt habe, ist, dass die objectss (2 ss) übergeben wird in der callback-Methode, aber Sie werden Zugriff auf Objekte (1 s), die nicht definiert werden
  • sorry, dass ist ein Tippfehler hier, nicht in meinem code ! Ich poste index.js obwohl
  • export syntax ist eigentlich ganz gut. module ist global, tun exports.foo = function() {} gültig ist. das sagte, von Ihrem repro-code es ist völlig unklar, was fehlschlägt. können Sie reduzieren die repro-down, um nur ein paar Zeilen und poste den tatsächlichen Fehler sind Sie immer?



One Reply
  1. 1

    Tun Sie Ihre Exporte falsch. Hier ist ein Beispiel, wie es richtig ist.

    Können sagen, ich will export 2 Funktionen für ein Modul dies ist eine einfache Möglichkeit, es zu erreichen.

    myModule.js

    module.exports = {
        awesomeMethod: function () {
    
        },
        coolMethod: function () {
    
        }
    }

    Nun, es zu benutzen, würde ich Folgendes tun

    var myModule = require(‚./myModule“);

    myModule.awesomeMethod();
    myModule.coolMethod();
    • Okay, also habe ich versucht zu implementieren, dies in meine index.js und jetzt bekomme ich einen syntaxerror, die besagt, dass clientMethod= function () { ist eine ungültige Kurzschrift-Eigenschaft Initialisierer
    • es sollte clientMethod: Funktion () . Ersetzen Sie die = mit :
    • Ich sehe, ich habe versucht, diese so gut und ich bekomme die Fehlermeldung: function() ist ein unerwartetes token, wo ein Pfeil nach oben unter der ersten (

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.