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

  • SomeOne Pro

    SomeOne Pro

    25 EKİM 2013
  • ThreadBanger

    ThreadBanger

    2 Mart 2007
  • YouChewBu

    YouChewBu

    26 Ocak 2009