The plugin allows to use http/https imports without installing npm packages on node_modules.
It also allows to use import-maps .
It can provide a feature similar to Snowpack 3.0, the new Streaming NPM Imports, which allows to skip the NPM install and node_modules.
//index.js
import React from 'https://cdn.skypack.dev/[email protected]'
console.log(React.version)
//build.js
import esbuild from 'esbuild'
import { cache } from 'esbuild-plugin-cache'
esbuild
.build({
entryPoints: ['index.js'],
bundle: true,
outfile: 'bundle.js',
plugins: [cache()],
})
.catch(() => process.exit(1))
config: {importmap: {imports:{[key: string]: string}}, directory: string}
-
importmap
: Import-map object. Default:{}
-
directory
: Path or name for the directory of the cache. Default to Deno cache directory. Optionally the cache directory can be defined with DENO_DIR env variable:process.env.DENO_DIR = 'cache'
.
//index.js
import React from 'react'
console.log(React.version)
//build.js
import esbuild from 'esbuild'
import { cache } from 'esbuild-plugin-cache'
const importmap = {
imports: {
react: 'https://cdn.skypack.dev/[email protected]',
},
}
esbuild
.build({
entryPoints: ['index.js'],
bundle: true,
outfile: 'bundle.js',
plugins: [cache({ importmap, directory: './cache' })],
})
.catch(() => process.exit(1))