Performance: Import maps for cleaner imports
This affects page load speed by simplifying module resolution and reducing network requests for module paths.
// import_map.json
{
"imports": {
"std/": "https://deno.land/std@0.177.0/"
}
}
// main.ts
import { serve } from "std/http/server.ts";
serve(() => new Response("Hello"));import { serve } from "https://deno.land/std@0.177.0/http/server.ts"; serve(() => new Response("Hello"));
| Pattern | DOM Operations | Reflows | Paint Cost | Verdict |
|---|---|---|---|---|
| Long URL imports | N/A | 0 | Blocks LCP due to network delays | [X] Bad |
| Import maps with short specifiers | N/A | 0 | Reduces blocking, faster LCP | [OK] Good |
import maps in Deno?imports.json?--import-map=.--import-map=imports.json, which is the correct form.imports.json file:{
"imports": {
"lodash": "https://cdn.skypack.dev/lodash"
}
}import _ from "lodash"; console.log(typeof _);
--import-map=imports.json?typeof _ returns "object".imports.json:{
"imports": {
"react": "https://cdn.skypack.dev/react"
}
}deno run --import-map=imports.json app.ts gives an error: Cannot resolve module "react". What is the likely cause?lodash and dayjs, with import maps to keep your code clean. Your imports.json is:{
"imports": {
"lodash": "https://cdn.skypack.dev/lodash",
"dayjs": "https://cdn.skypack.dev/dayjs"
}
}import _ from "lodash"; import dayjs from "dayjs"; console.log(dayjs().format());
--import-map flag pointing to your map file.Pass the test and this pattern moves unknown