SORU
11 NİSAN 2011, PAZARTESİ


dış vardır .js node.js app dosyası

App.js düğüm bir uygulama var. Bu dosya büyümeye başlıyor, "" ya da "vardır" app.js dosya. ihtiyacım olan bazı diğer dosyalarda programın bir kısmını taşımak istiyorum

Şey gibi çalışıyorum:

// Declare application
var app = require('express').createServer();

// Declare usefull stuff for DB purposes
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ObjectId = Schema.ObjectId;

// THE FOLLOWING REQUIRE DOES NOT WORK
require('./models/car.js');

içinde car.js:

// Define Car model
CarSchema = new Schema({
  brand        : String,
  type : String
});
mongoose.model('Car', CarSchema);

Hata var:

ReferenceError: Schema is not defined

Sadece car.js (yerine aynı app.js her şeyi dosyası olması) node.js bunun için particuliar bir yolu var yüklenen içerik için arıyorum ?

CEVAP
11 NİSAN 2011, PAZARTESİ


Herkes üst düzeyde var foo öyle bir vurgu yer için global bir değişken oluşturmaz. Eğer global bir değişken istiyorsanız o zaman global.foo yazın. ama biztümbiliyorum bütünsel kötüdür.

Eğer birisi kim kullanır bütünsel böyle bir node.js proje olmuştum istiyorum yeniden onları gelince orada sadece çok az durumlarda kullanmak için (bir kaç istisna dışında ama bu değil).

// Declare application
var app = require('express').createServer();

// Declare usefull stuff for DB purposes
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var ObjectId = Schema.ObjectId;

require('./models/car.js').make(Schema, mongoose);

car.js

function make(Schema, mongoose) {
    // Define Car model
    CarSchema = new Schema({
      brand        : String,
      type : String
    });
    mongoose.model('Car', CarSchema);
}

module.exports.make = make;

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • celebrateubuntu

    celebrateubu

    23 Mayıs 2011
  • magnum33563

    magnum33563

    8 NİSAN 2011
  • TechXCentral

    TechXCentral

    12 Temmuz 2011