独立拆分 simple 目录,属于全栈精简版,目前妙搭场景专用。
npm install @lark-apaas/fullstack-presets检测嵌套的 styled-jsx 标签,防止编译错误。https://nextjs.org/docs/messages/nested-styled-jsx-tags
该规则镜像了 styled-jsx babel 插件中的验证逻辑:
- babel.js#L215
- babel.js#L222
#### 使用方式
该规则已在 eslint-client.ts 配置中默认启用,无需额外配置:
``typescript
import clientConfig from '@lark-apaas/fullstack-presets/recommend/eslint/eslint-client';
export default [
clientConfig,
// 其他配置...
];
`
如需单独使用该规则:
`typescript
import { customRules } from '@lark-apaas/fullstack-presets/custom-eslint-rules';
export default [
{
plugins: {
'@lark-apaas': { rules: customRules },
},
rules: {
'@lark-apaas/no-nested-styled-jsx': 'error',
},
},
];
`
#### 错误信息
当检测到嵌套的 styled-jsx 标签时,规则会提供详细的错误信息,指出与哪一行的外层 styled-jsx 标签冲突:
``
17:23 error Detected nested styled-jsx tag. The outer styled-jsx tag is at line 4. Read more: https://nextjs.org/docs/messages/nested-styled-jsx-tags @lark-apaas/no-nested-styled-jsx
这样可以快速定位到冲突的外层 styled-jsx 标签,方便修复问题。
#### 自定义错误信息
可通过配置自定义报错信息:
`typescript
rules: {
'@lark-apaas/no-nested-styled-jsx': ['error', {
message: '禁止嵌套 styled-jsx 标签,请将