diff --git a/docs/api/cypress-api/require.mdx b/docs/api/cypress-api/require.mdx index 66b38255b5..b10753509d 100644 --- a/docs/api/cypress-api/require.mdx +++ b/docs/api/cypress-api/require.mdx @@ -28,7 +28,7 @@ callback requires enabling the ::: ```js -Cypress.require(moduleNameOrPath) +Cypress.require('moduleNameOrPath') ``` ## Usage @@ -47,16 +47,21 @@ cy.origin('cypress.io', () => { **Incorrect Usage** ```js -// `Cypress.require()` cannot be used outside the `cy.origin()` callback. +// ❌ `Cypress.require()` cannot be used outside the `cy.origin()` callback. // Use CommonJS `require()` instead const _ = Cypress.require('lodash') cy.origin('cypress.io', async () => { - // `require()` and `import()` cannot be used inside the `cy.origin()` callback. + // ❌ `require()` and `import()` cannot be used inside the `cy.origin()` callback. // Use `Cypress.require()` instead const _ = require('lodash') const utils = await import('./utils') }) + +cy.origin('cypress.io', { args: { lodash: 'lodash' } }, ({ lodash }) => { + // ❌ Dynamic values and variable references cannot be passed to `Cypress.require`. + const _ = Cypress.require(lodash) +}) ``` See @@ -109,7 +114,7 @@ cy.origin('cypress.io', async () => { - `.mjs` - `.json` - `.coffee` -- `Cypress.require('dependency-name')` must on one line as a continuous string: +- `Cypress.require('dependency-name')` must on one line as a continuous string, and the dependency cannot be dyanmically defined: {/* prettier-ignore-start */} ```js @@ -131,6 +136,11 @@ Cypress . require('lodash') Cypress.require( 'lodash' ) + +// ❌ BAD +const lodashPkgName = 'lodash' +Cypress.require(lodashPkgName) + ``` {/* prettier-ignore-end */}