no-window
NOTE: this rule is part of the
recommended rule set.Enable full set in
deno.json:{
"lint": {
"rules": {
"tags": ["recommended"]
}
}
}Enable full set using the Deno CLI:
deno lint --rules-tags=recommended
This rule can be explictly included to or excluded from the rules present in the current tag by adding it to the
include or exclude array in deno.json:{
"lint": {
"rules": {
"include": ["no-window"],
"exclude": ["no-window"]
}
}
}Disallows the use of the window object.
The window global is no longer available in Deno. Deno does not have a window
and typeof window === "undefined" is often used to tell if the code is running
in the browser.
Invalid:
const a = await window.fetch("https://deno.land");
const b = window.Deno.metrics();
console.log(window);
window.addEventListener("load", () => {
console.log("Loaded.");
});
Valid:
const a1 = await fetch("https://deno.land");
const a2 = await globalThis.fetch("https://deno.land");
const a3 = await self.fetch("https://deno.land");
const b1 = Deno.metrics();
const b2 = globalThis.Deno.metrics();
const b3 = self.Deno.metrics();
console.log(globalThis);
addEventListener("load", () => {
console.log("Loaded.");
});