اذهب إلى المحتوى
  • 0

كيف أطبع النتيجة بعد الاستعلام من قاعدة بيانات NeDB في Nod.JS NW.JS ؟

حنظلة أمجد

السؤال

<!DOCTYPE html>
<html>
  <head>
    
  </head>
  <body>
    <script>

    var markdown = require('markdown').markdown;
	
	
	var Datastore = require('nedb')
	db = new Datastore('db/db.nedb');
	db.loadDatabase();

db.find({ name: 'usama' }, function (err, docs) {

document.write(JSON.stringify(docs)); //طباعة النتائج ههنا بسهولة، 
});

// ولكني أريد طباعة النتائج خارج الدالة ههنا مثلا أو في مكان آخر في الأسفل
    </script>
	


  </body>
</html>

ٲرجو أن يكون سؤالي واضحا

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

توجد طريقتين :

- إما أن تنفذ الامر مباشرة على الـ callback كما فعلت في document.write .

- أو تنادي دالة أخرى و توفر لها المتغير كمعامل ، كمثال

var markdown = require('markdown').markdown;	
	
var Datastore = require('nedb')
db = new Datastore('db/db.nedb');
db.loadDatabase();

db.find({ name: 'usama' }, function (err, docs) {
	renderResults(docs);	// هنا إستخراج عملية الرسم لدالة أخرى
});

function renderResults (docs) {
	document.write(docs); // و هنا تنفيذ الامر
}

و السبب في الامرين أن عملية جلب البيانات من قاعدة البيانات nedb "غير متزامنة" مثل الـ Ajax و بالتالي لا يمكنك الاستفادة من البيانات إلا داخل هذه الدالة المسترجعة .

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 1

راجعتُ رسالتك والشيفرة هنا في السؤال ويبدو أن مشكلتك أنك تحتاج إلى تعلم العمل مع وثيقة الصفحة ومع جافا سكريبت؛ لا يوجد أي خطأ في الشيفرة وما تريده شيء بديهي ستستخدم الـكائـن النـاتج من الإستعلام وستنصنع عناصـر في الوثيقة وستضيفها إلى الوثيقة، لا يوجد أي مشاكل، أنصحك بقراءة الجزء الأول (Language) والثاني (Browser) من كتاب: http://eloquentjavascript.net/
أتمنى لك التوفيق صديقي :)

تم التعديل في بواسطة يوسف سيد
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...