log
Turn off or on logging on all queues.
queues.log( [type] )
queues.log
calls log on all queues in can-queues
:
notifyQueue, deriveQueue, domUIQueue and the
mutateQueue.
Calling queues.log("flush")
is a useful tool for debugging.
import queues from "can-queues";
queues.log( "flush" );
Parameters
- type
{String|Boolean}
:Specifies what to log.
.log()
- Logs when tasks are enqueued and run..log(false)
- Turn off logging..log("flush")
- Log only flushing..log("enqueue")
- Log on enqueuing.
Use
Consider the following code that derives an info
value from the person
observable:
const person = new observe.Object( { name: "Fran", age: 15 } );
const info = new Observation( function updateInfo() {
return person.name + " is " + person.age;
} );
info.on( function onInfoChanged( newVal ) {
console.log( "info changed" );
} );
queues.log();
person.age = 22;
.log()
is used to log every task as it is enqueued and flushed. If queues.log()
was called
prior to person.age
being set, the following would be logged:
NOTIFY enqueuing: Observation<updateInfo>.onDependencyChange ▶ { ... } NOTIFY running : Observation<updateInfo>.onDependencyChange ▶ { ... } DERIVE enqueuing: Observation<updateInfo>.update ▶ { ... } DERIVE running : Observation<updateInfo>.update ▶ { ... } MUTATE enqueuing: onInfoChanged ▶ { ... } MUTATE running : onInfoChanged ▶ { ... }
Typically, knowing when tasks are enqueued is not helpful for debugging so it's generally more useful to only log when tasks are flushed with:
queues.log( "flush" );