V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
yayaluoya481
V2EX  ›  JavaScript

最近用到了 Naive UI,感觉以后前端写 css 是不是也要用 js 来写了呀。

  •  
  •   yayaluoya481 · 24 天前 · 2122 次点击

    如果前端的 html ,css 全部用 js 来写的话其实感觉还行,如果用 ts 来写的话就有类型约束了更爽。

    16 条回复    2024-10-14 14:46:18 +08:00
    nulIptr
        1
    nulIptr  
       24 天前
    啊? css 有类型约束有什么优势吗,一共就这么多属性名编辑器的补全不够用?
    jqtmviyu
        2
    jqtmviyu  
       24 天前
    我讨厌 css in js, 还有 原子化 css.
    巨难接受 naive ui 的 h 函数. 特别是表格那边的使用.
    kev1nzh
        3
    kev1nzh  
       24 天前
    有贡献过代码,作者写的那个还挺好用的
    LuckyLauncher
        4
    LuckyLauncher  
       24 天前
    css 用类型约束???
    各家浏览器的实现和版本约束不死你
    lollipogo
        5
    lollipogo  
       24 天前
    我是更喜欢 Tailwind 的方式,配合 VSCode 插件挺好用的。另外 TS 的话见仁见智,我现在部分情况如枚举、纯工具函数之类的会单独用 TS 写,大部分还是用 JS 写,部分 JS 函数也可以再把注释完善一下,其实用起来代码提示也够了
    yayaluoya481
        6
    yayaluoya481  
    OP
       24 天前
    @lollipogo js+jsdoc 很好用,但是写起来很繁杂,没 ts 类型写着简洁。
    yayaluoya481
        7
    yayaluoya481  
    OP
       24 天前
    @nulIptr 也不是类型约束吧,就是要知道一个 jsx 的元素用到了哪些样式,定义了哪些东西,在哪里定义的,不然样式分布在各个 css 文件中改起来是真的恶心。
    server
        8
    server  
       24 天前
    非前端, 怎么快怎么来 最近痴迷 shadcn/ui
    lisongeee
        9
    lisongeee  
       24 天前
    @jqtmviyu

    naive ui 应该是 jsx/tsx 来写方便,它那个文档示例全用 h 函数写得有问题,会误导不了解 jsx 的人
    chengxy
        10
    chengxy  
       24 天前
    @jqtmviyu #2 你把 lang 改成 tsx ,用 tsx 写不就行了,只是官方文档没写清楚.
    shintendo
        11
    shintendo  
       24 天前
    写 React 的时候踩过好几次的坑:打草稿阶段直接在 JSX 里用 style 对象写样式,满意了之后整理出来到 css 里,但是前者写颜色值是带引号的,挪到后者里要去掉引号,但是这个视觉上不明显,很容易遗漏

    后来开了类型检查就好了
    jspatrick
        12
    jspatrick  
       24 天前
    听你的描述,看上去得上个 unocss 之类的东西,就没这烦恼了
    zxdstyle
        13
    zxdstyle  
       23 天前
    css 要的不是类型约束,是强类型,例如 cssinjs 就可以大幅提高 css 的可维护性。试想一下,一个大型项目,几百上千个 css 文件,一大堆 class ,没人敢删一行代码。你不知道哪个地方使用了这个 class ,cssinjs 可以,样式是否被引用,哪里引用,一目了然。
    yayaluoya481
        14
    yayaluoya481  
    OP
       23 天前
    @zxdstyle 就是这个意思,要能方便找到样式在哪里被定义的,在哪些地方被使用了。
    Dotennin
        15
    Dotennin  
       23 天前
    一些旧的项目重构, 好几个 global css 文件堆叠. 重复的部分一堆. 但一个都删不掉. 你就知道有多痛苦了.
    07akioni
        16
    07akioni  
       19 天前
    不会的,CSS 很多功能放到 JS 里面太绕了,SSR 、构建、工具链都会有各自的问题,并且不是普通开发者有能力处理的。

    放不放到 JS 里面最终只能是甜、咸之争,看风味。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1064 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:40 · PVG 03:40 · LAX 12:40 · JFK 15:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.