我不久前遇到了路径别名。提到开发人员如何在他们的 react 和 node 项目中导入的文章看起来很好。我想知道我是否可以在我的赛普拉斯自动化中使用此功能。
让我给你一些背景信息。因此,我的项目中的导入通常如下所示:
import productspage from '../../pages/productspage'; import navigation from '../../pages/navigation'; import testdata from '../../../../fixtures/product-listing.json'但是使用路径别名,导入看起来像:
import productspage from '@pages/productspage'; import navigation from '@pages/navigation'; import testdata from '@fixtures/product-listing.json'更干净了,对吗?
按照说明在您的 cypress 项目中设置路径别名。
npm install --save-dev @cypress/webpack-preprocessor第 2 步:webpack 选项
const wpoptions = { webpackoptions: { resolve: { alias: { '@pages': path.resolve(__dirname, './cypress/e2e/pages'), '@fixtures': path.resolve(__dirname, './cypress/fixtures'), '@': __dirname, }, }, }, watchoptions: {}, };第 3 步:配置预处理器插件
setupnodeevents(on, config) { on('file:preprocessor', webpackpreprocessor(wpoptions)); }第四步:添加jsconfig路径
{ "compileroptions": { "paths": { "@pages/*": [ "./cypress/e2e/pages/*" ], "@fixtures/*": [ "./cypress/fixtures/*" ], "@/*": [ "./*" ] } } }仅此而已!
现在您可以像这样创建导入
import productspage from '@pages/productspage'; import navigation from '@pages/navigation'; import testdata from '@fixtures/product-listing.json'