Dart Dilinde Console.log


Yanıtlar:


118

Basit:

print('This will be logged to the console in the browser.');

printDart'ın tüm uygulamalarında (tarayıcı, VM, vb.) Her zaman temel bir üst düzey işlev mevcuttur. Dart'ın dize enterpolasyonu olduğundan, yararlı şeyler yazdırmak için de kullanmak kolaydır:

var a = 123;
var b = new Point(2, 3);
print('a is $a, b is ${b.x}, ${b.y}');

56

Ayrıca nesne dart:htmlkullanımına izin verir window.console.

import 'dart:html';

void main() {
  window.console.debug("debug message");
  window.console.info("info message");
  window.console.error("error message");
}

Bu firefox'ta çalışıyor gibi görünüyor, en azından window.console.debug ('') test ettim
Gökhan Barış Aker

1
Bu cevap çok daha iyidir, çünkü konsoldaki nesne grafiklerinde herhangi bir JS kitaplığında yaptığınız gibi gezinebilirsiniz. Mevcut FF'de çalışıyor.
Akos Lukacs

8

Bu kolay! Günlük paketini içe aktarmanız yeterlidir:

import 'package:logging/logging.dart';

Bir kaydedici nesnesi oluşturun:

final _logger = Logger('YourClassName');

Daha sonra bir şey kaydetmeniz gerektiğinde kodunuzda:

_logger.info('Request received!');

Bir istisna yakalarsanız, onu ve yığın izini de kaydedebilirsiniz.

_logger.severe('Oops, an error occurred', err, stacktrace);

Günlük paketi belgeleri: https://github.com/dart-lang/logging


3
bu bir bağımlılıktır, pubspec.yml bağımlılıklarına eklenmesi gerekir: günlük kaydı: ^ 0.11.4
ir2pid

Ayrıca Logger'ın faydalı bir şey yapmasını sağlamak için bazı kodlar eklemeniz gerekir. Yalnızca yukarıdaki koda sahipseniz, günlük mesajları boşluğa gönderilecektir. Günlük mesajlarını konsola yönlendirmek için, örneğin, aşağıdaki gibi bir kod kullanabilirsiniz: // Configure logging to output to console: Logger.root.level = Level.ALL; Logger.root.onRecord.listen((record) { print('${record.level.name}: ${record.time}: ${record.message}'); });
Pi Da

Bu, "konsola yazma" sorusuna cevap vermiyor. Konsola yazan bir kaydedici kaydetmediğiniz sürece, söylediğiniz şeyi yapmak hiçbir şey yapmaz ... Ve sonra konsola yazmanın bir yolunu bulmaya çalışıyorsunuz.
Stephan Leclercq

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.