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" );