loading...

Workspaces and Rollup

kthjm profile image kthjm ・1 min read

How to resolve modules located in workspaces by rollup.

situation is:
workspace-a and workspace-b that contain modules are set in "workspaces".

// package.json
"private": true,
"workspaces": [
  "workspace-a/*", // workspace-a/[module]/package.json
  "workspace-b/*"
],

To resolve the modules, pass the directories to rollup-plugin-node-resolve via customResolveOptions.moduleDirectory.

// rollup.config.js
import Resolve from 'rollup-plugin-node-resolve'

const resolve = Resolve({
  customResolveOptions: {
    moduleDirectory: [ // as array
      'workspace-a',
      'workspace-b',
    ]
  }
})

And it is necessary that [module]'s dirname equals to its "name" in package.json.


There may be the way more smart, this is just a solution.😗

Discussion

pic
Editor guide