Conditional CSS with styled tag
还没有人认领这个 Issue。
评估
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 新手友好度
- 30/100
- Issue 类型
- 缺陷
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- react, typescript
- 领域
- frontend
调研方向
该 issue 未指出源文件或测试;首先复现 styled.ul 的条件示例,并跟踪会拒绝 callback 返回 false 或 undefined 的 styled-tag TypeScript 类型定义。完成的标准是:带有可选 dark prop 的预期条件 CSS 能被接受,并且报告的编译器错误由回归测试覆盖。
由索引模型根据 Issue 内容生成。
描述
Ask your Question
Is it possible to do something like the following?
const TopLevelList = styled.ul<{ dark?: boolean }>`
border-top: 1px solid ${BrandColors.BORDER};
margin-top: 0;
${props => props.dark && ({
color: 'black',
})}
`;
Typescript is giving the following error:
Argument of type '(props: { dark?: boolean | undefined; }) => false | { color: string; } | undefined' is not assignable to parameter of type 'string | number | CSSProperties | ((props: { dark?: boolean | undefined; }) => TLength)'.
Type '(props: { dark?: boolean | undefined; }) => false | { color: string; } | undefined' is not assignable to type '(props: { dark?: boolean | undefined; }) => TLength'.
Type 'false | { color: string; } | undefined' is not assignable to type 'TLength'.
Type 'undefined' is not assignable to type 'TLength'.ts(2345)
- 主要语言
- TypeScript
- 星标
- 12.4k
- 派生
- 413
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
callstack/linaria 的其他 Issue
-
enhancement: proposal 💬 needs: triage 🏷
难度 4/5 3-5 天 新手友好度 45/100
-
feature: proposal 💬 needs: triage 🏷
难度 5/5 一周以上 新手友好度 35/100
-
cat: modules aliasing 🔗 enhancement: proposal 💬 needs: triage 🏷
难度 3/5 1-2 天 新手友好度 35/100
-
enhancement: proposal 💬 needs: triage 🏷
难度 3/5 1-2 天 新手友好度 35/100
-
bug report 🦗 bundler: webpack 📦 needs: complete repro 🖥️
难度 3/5 1-2 天 新手友好度 35/100
查看 callstack/linaria 的全部 Issue
相似的 Issue
-
🐛 Bug: Calendar work items cannot be opened on mobile可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 1/5 1 小时以内 新手友好度 75/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 72/100
jaegertracing/jaeger-ui#4596 ·
维护者通常 1 天内回复
-
area:tui enhancement platform:macos
难度 2/5 1-3 小时 新手友好度 66/100
anthropics/claude-code#101490 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 66/100
netlify/netlify-mcp#75 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复