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

  • campos9896

    campos9896

    24 Mart 2012
  • iNCH

    iNCH

    20 Temmuz 2009
  • Shameless Maya

    Shameless Ma

    24 Mayıs 2012