我在 NX monorepo 中创建了一个 nextjs 应用程序,并开始将现有的 NX 应用程序(在同一个 monorepo 中)移植到其中。
我的 NX monorepo 设置了许多别名,所有别名都在根tsconfig.base.json
文件中配置。例如,我将所有图像保存在图像库中,并从 JSX 中像这样加载它们:
import myImage from '@images/myImage.png';
Run Code Online (Sandbox Code Playgroud)
这是我在 SCSS 文件中使用别名的方式:
background-image: url('@images/myImage.png');
Run Code Online (Sandbox Code Playgroud)
这两个应用程序都可以在我现有的非 Nextjs 应用程序中工作,但是,当我将应用程序移植到新的 Nextjs 应用程序时,url()
无法识别其中使用的别名。我得到的错误看起来像这样:
Module not found: Can't resolve '../themes/@images/myImage.png'
Run Code Online (Sandbox Code Playgroud)
请注意,我的 css 文件位于其中,./themes
因此它将别名@images/...
url 视为相对路径并将它们附加到当前文件位置。
在 scss 中使用时正确处理别名路径的推荐方法是什么?
我的NX会话的键映射出现乱码问题.
我有一台运行OS X Lion的Macbook Air.我使用OpenNX与运行FreeNX的Ubuntu服务器启动会话.会话类型是Gnome.
我的键映射非常关闭(例如,w给出=,删除给出",",t给出w).我试过了:
xmodmap -pke > nxclient.xmodmap
Run Code Online (Sandbox Code Playgroud)
在客户端上,
xmodmap nxclient.xmodmap
Run Code Online (Sandbox Code Playgroud)
在服务器上,我恢复了许多密钥,但它仍然无法使用.我尝试了Gnome键盘布局但没有工作.XFCE会话也会出现此问题.
我会很感激任何提示.x2go使用Gnome在客户端和服务器上工作,没有任何问题.不幸的是,它目前在Mac OS X Lion上不起作用.
在 nx 升级过程中,项目已从 升级为11.2.11
( )12.2.10
nx migrate
现在,代码检查时间从 30 秒增加到 4 分钟:
\n time TIMING=1 ng lint my-app\n\n> nx run my-app:lint \n\nLinting "my-app"...\n\nAll files pass linting.\n\nRule | Time (ms) | Relative\n:------------------------------------------|-----------:|--------:\nimport/no-deprecated | 204887.182 | 99.6%\n@nrwl/nx/enforce-module-boundaries | 260.016 | 0.1%\n@typescript-eslint/naming-convention | 83.345 | 0.0%\nmax-len | 66.311 | 0.0%\ncomma-dangle | 40.576 | 0.0%\nno-global-assign | 23.094 | 0.0%\n@typescript-eslint/no-unused-vars | 22.934 | 0.0%\n@typescript-eslint/type-annotation-spacing | 22.831 | 0.0%\nno-misleading-character-class | 18.360 | 0.0%\n@typescript-eslint/triple-slash-reference | 16.281 | 0.0%\n\n\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\n\n> NX SUCCESS Running target "lint" …
Run Code Online (Sandbox Code Playgroud) 我收到以下错误,并将 React 应用程序添加到系统上已有的 Nx 项目中:
Require stack:
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\@nrwl\devkit\index.js
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\@nrwl\react\src\utils\lint.js
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\@nrwl\react\src\generators\application\application.js
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\nx\src\shared\workspace.js
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\nx\src\cli\init-local.js
- C:\Users\HP\OneDrive\Documents\amagi-qtc\node_modules\nx\bin\nx.js
- C:\Users\HP\AppData\Roaming\npm\node_modules\@nrwl\cli\node_modules\nx\bin\nx.js
- C:\Users\HP\AppData\Roaming\npm\node_modules\@nrwl\cli\bin\nx.js
Run Code Online (Sandbox Code Playgroud)
我确实在 nx 项目中安装了 React
yarn add -D @nrwl/react
Run Code Online (Sandbox Code Playgroud)
但是当我运行这个命令时:
nx g @nrwl/react:app my-new-app
Run Code Online (Sandbox Code Playgroud)
它给了我上面的错误。
我知道我可以使用 清除 nx 缓存,nx reset
但是有没有办法清除 NX 云缓存?
我在他们的 GUI 中找不到可以启用此功能的命令或选项。
我正在编写一个Linux内核模块,我想分配一个可执行页面.普通的kmalloc在非可执行页面中返回一个指针,在那里执行代码时会出现内核恐慌.它必须适用于Ubuntu Karmic x86,2.6.31-20-generic-pae.
我试图在每一条评论中都给出一个可能的解决方案。我还依赖 github 上的一个示例项目,它运行得很好。
\n在手动更新所有内容之后,这也开始发生在我身上,并且在运行 nx test 命令时,发生此错误。
\n我的 jest.config.js 位于apps/my-app 内:
\nmodule.exports = {\n preset: "../../jest.preset.js",\n coverageDirectory: "../../coverage/apps/my-app",\n moduleFileExtensions: ["ts", "html", "js", "json", "mjs"],\n extensionsToTreatAsEsm: [".ts"],\n resolver: "jest-preset-angular/build/resolvers/ng-jest-resolver.js",\n setupFilesAfterEnv: ["<rootDir>/src/test-setup.ts"],\n globals: {\n "ts-jest": {\n tsconfig: "<rootDir>/tsconfig.spec.json",\n stringifyContentPathRegex: "\\\\.(html|svg)$",\n useESM: true\n }\n },\n transform: {\n "^.+\\\\.(ts|js|mjs|html|svg)$": "jest-preset-angular",\n },\n displayName: "my-app",\n snapshotSerializers: [\n "jest-preset-angular/build/serializers/no-ng-attributes",\n "jest-preset-angular/build/serializers/ng-snapshot",\n "jest-preset-angular/build/serializers/html-comment",\n ],\n transformIgnorePatterns: [\n "node_modules/(?!.*\\\\.mjs$)",\n "node_modules/(?!lodash-es)",\n "node_modules/(?!@ngrx|@ionic-native|@ionic)"\n ]\n};\n
Run Code Online (Sandbox Code Playgroud)\n项目根目录中的jest.config.js :
\nconst { getJestProjects } = require("@nrwl/jest");\n\nmodule.exports = { …
Run Code Online (Sandbox Code Playgroud) 我试着回答马克的问题:
NX从Mac OS X Lion到Ubuntu的键盘映射问题
然而,它被锁定所以我想我会发布一个新的问题/答案.
我一直试图回答这个问题几天,因为从iMac(与Lion)通过NX Client(技术上是OpenNX)连接到FreeNX服务器时没有问题,但是如果我尝试连接Macbook Pro我会变得很糟糕键盘绑定问题.
nx run myproject:test --testFile=libs/myproject/src/lib/guards/role.guard.spec.ts\n
Run Code Online (Sandbox Code Playgroud)\n我预计只测试一个 .spec 文件。但是,错误输出显示其他 .spec 文件。
\n$ nx run myproject:test --testFile=libs/myproject/src/lib/guards/role.guard.spec.ts \n\nFAIL core libs/myproject/src/lib/guards/role.guard.spec.ts\n\xe2\x97\x8f Test suite failed to run\n\n libs/myproject/src/lib/auth/auth.service.ts:49:11 - error TS2564: Property 'sessions' has...\n\n 49 private sessions: string;\n libs/myproject/src/lib/auth/auth.service.ts:51:11 - error TS2564...\n\n... Many more lines ...\n\nTest Suites: 1 failed, 1 total\nTests: 0 total\nSnapshots: 0 total\nTime: 6.953 s\nRan all test suites matching /libs\\\\myproject\\\\src\\\\lib\\\\guards\\\\role.guard.spec.ts/i.\n
Run Code Online (Sandbox Code Playgroud)\n为什么要运行额外的测试,例如libs/myproject/src/lib/auth/secure.directive.spec.ts
?
我使用以下命令序列创建了一个新的 Angular 工作区:
npx ng new starwars --prefix ts --routing --style scss
cd starwars
npx ng add @ngrx/store@latest # accepting the defaults
npx ng lint # accepting the installation and the defaults
Run Code Online (Sandbox Code Playgroud)
然后,运行ng lint
“所有文件都通过列表。”,但随后我收到此错误:
/Users/someuser/Desktop/toyota-starwars/node_modules/@nrwl/devkit/src/utils/convert-nx-executor.js:54 .next() ^
类型错误:iterator.next 不是函数
首先,Nx 到底在里面做什么?是什么导致了这个错误?
我使用的是节点 16.16.0。
当发生完全相同的行为时
nomachine-nx ×10
angular ×3
eslint ×2
javascript ×2
jestjs ×2
keymapping ×2
macos ×2
node.js ×2
angular-cli ×1
executable ×1
hadoop-yarn ×1
linux-kernel ×1
next-images ×1
next.js ×1
nrwl-nx ×1
reactjs ×1
sass ×1
typescript ×1