It doesn’t switch Node.js version dynamically as you navigate from project to project.
This is somewhat correct for shells but not for projects. Using the use-node-version property in a .npmrc file forces PNPM to use that version of Node in its execution context and auto-installs the declared version of Node if not previously downloaded. You can have nested .npmrc files (think monorepo) to use different versions of Node for targeted projects all isolated from each other as well as your global version.
This means your global Node version (set by PNPM) does not affect your locally declared Node version and doesn't require any separate configuration or commands, like nvm use, to switch Node versions.