V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
wukong1024
V2EX  ›  问与答

sass less stylus 哪个前景好?

  •  
  •   wukong1024 · 2020-08-24 12:02:33 +08:00 · 5763 次点击
    这是一个创建于 1333 天前的主题,其中的信息可能已经有所发展或是发生改变。

    sass less stylus 哪个前景好?前端更新太快了,麻烦推荐一个目前最值得学习的 css 预处理器。

    第 1 条附言  ·  2020-08-24 21:54:46 +08:00
    补充一下:
    最后听了 @yyfearth 建议,选了 sass 。
    1. 个人是在努力做全栈的,有 python 环境,也有梯子。
    2. 安装 node-sass 确认存在问题,查了资料也解决问题了,使用 npm i node-sass --sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
    3. 直接安装 sass-loader 版本存在问题,好像是版本过高,没搞懂。。最终 sass-loader@7 也解决问题了。
    4. 个人在小公司独立做开发,在做的网站是用 webpack 打包的,也是边学边做,面向 google 编程。
    5. 谢谢各位的指教, 学到了很多。
    38 条回复    2020-11-14 21:07:59 +08:00
    wukong1024
        1
    wukong1024  
    OP
       2020-08-24 12:04:37 +08:00
    补充:目前主要在用 vue 做项目
    Jirajine
        2
    Jirajine  
       2020-08-24 12:05:52 +08:00
    不需要预处理器,直接用 atomic css,tailwind 比较好
    drydiy
        3
    drydiy  
       2020-08-24 12:05:55 +08:00
    我投 postcss 一票
    agdhole
        4
    agdhole  
       2020-08-24 12:09:58 +08:00   ❤️ 1
    stylus 不考虑了
    SxqSachin
        5
    SxqSachin  
       2020-08-24 12:18:31 +08:00
    tailwind +1
    yyfearth
        6
    yyfearth  
       2020-08-24 13:29:04 +08:00   ❤️ 1
    如果仅仅考虑 sass less stylus 里面挑一种 建议 sass(scss)
    最成熟 而且用的人也多

    less 出现的时候 比 sass 的主要优势就是 less 是 js 实现的 所以对 nodejs 比较友好 而 sass 之前是 ruby 实现的
    但是现在 sass 核心使用 c/c++实现的 node 的支持也没问题了 所以 less 比 sass 的优势就没那么明显了 功能上和成熟度还不如 sass
    很多流行的框架 都有 sass 源码 但 less 的比较少 用 sass 比较方便扩展和定制
    (stylus 基本上不考虑了)

    除此之外 postcss 也是可以的 可以单独用或者作为 sass 的补充也不错

    除开这几个预处理器 还有一些 css-in-js 的实现 可以了解一下
    可能灵活度会更好 而且对 component 组件化更加友好一些
    但是功能和成熟度要差一些 而且选择也是眼花缭乱
    huiyifyj
        7
    huiyifyj  
       2020-08-24 13:30:42 +08:00
    sass
    shyling
        8
    shyling  
       2020-08-24 13:37:35 +08:00
    sass 还没一统江湖吗。。。楼主这个问题我实习时就在想,现在几年过去了
    falcon05
        9
    falcon05  
       2020-08-24 13:40:17 +08:00 via iPhone
    sass 吧 ,照目前看来
    Pyrex23
        10
    Pyrex23  
       2020-08-24 13:41:12 +08:00 via iPhone
    scss 吧
    kaikai5601
        11
    kaikai5601  
       2020-08-24 14:04:21 +08:00
    不懂这些有什么区别? 我都拿来用的,非前端
    wukong1024
        12
    wukong1024  
    OP
       2020-08-24 14:13:56 +08:00
    @yyfearth 谢谢大神的耐心回复,确定使用 sass 了。
    gouflv
        13
    gouflv  
       2020-08-24 14:48:20 +08:00 via iPhone
    用过的几个组件库都是用 less,可能是比较轻量
    liyang5945
        14
    liyang5945  
       2020-08-24 14:51:39 +08:00
    sass +1,主要是不用打括号和分号,用过 scss 发现嵌套太恶心了
    Ritr
        15
    Ritr  
       2020-08-24 14:59:16 +08:00
    sass 在 win 下不友好,如果不用 windows 还是非常不错的
    xinple
        16
    xinple  
       2020-08-24 14:59:22 +08:00
    用 less 开发过项目,感觉不错。体验过 sass 但实际项目没使用。最后选择了 postcss 感觉很够用了,已经好几个项目都用了。
    yyfearth
        17
    yyfearth  
       2020-08-24 15:05:15 +08:00
    @Ritr 为什么不友好呢 如果说 ruby 版的确实 但现在都是 c 版的了 node-sass 应该在 win 下没啥大问题
    azcvcza
        18
    azcvcza  
       2020-08-24 15:08:44 +08:00
    less 吧,公司内网装 sass 总会整出各种各样奇怪的问题,还没发绕过安全限制去整。
    如果不是活太多,我还是喜欢写原生
    murmur
        19
    murmur  
       2020-08-24 15:10:02 +08:00
    less,s*ss 装要么得科学上网,要么得装 c++编译器
    wszgrcy
        20
    wszgrcy  
       2020-08-24 15:12:23 +08:00 via Android
    sass(scss)
    qianyin925
        21
    qianyin925  
       2020-08-24 15:23:04 +08:00
    sass 而且建议使用 dart-sass 替代 node-sass
    king888
        22
    king888  
       2020-08-24 15:29:10 +08:00
    stylus 不考虑了+1
    sass 而且建议使用 dart-sass 替代 node-sass +1
    alphardex
        23
    alphardex  
       2020-08-24 15:39:35 +08:00
    必须我大 scss
    TimPeake
        24
    TimPeake  
       2020-08-24 15:49:25 +08:00
    对我来说这玩意儿只要能嵌套、变量就 Ok
    Ritr
        25
    Ritr  
       2020-08-24 16:08:58 +08:00
    @yyfearth sass 要装个 Python 的环境,还得科学上网有点麻烦
    zywz999
        26
    zywz999  
       2020-08-24 16:12:08 +08:00
    其实我觉得没啥差别
    en20
        27
    en20  
       2020-08-24 16:27:19 +08:00 via iPhone
    stylus 用缩进处理层级嵌套太恶心了,复制粘贴导致上下大片代码错乱。还有就是每次回车换行光标都很迷
    yyfearth
        28
    yyfearth  
       2020-08-24 17:06:32 +08:00
    @Ritr 你说的是 gyp 把
    那个你只要配置一次就好了 而且任何二进制模块编译都需要 我大部分项目都有二进制模块所以就还好
    不太记得 win 下是否有预编译好的模块下载 如果有的话就不用本地编译了

    这个等什么时候 node 稳定支持 wasm 应该就可以彻底解决这个问题了把

    不过 @king888 真的提供了一个很好的选择 https://www.npmjs.com/package/sass
    这个实际上已经算是 js 版本了 不需要编译 就可以用了 就是稍微慢一些
    huai
        29
    huai  
       2020-08-24 17:11:42 +08:00 via iPhone
    楼上真的前端吗? sass 安装各种问题,劝退。less 满足了大多数日常需要
    ynohoahc
        30
    ynohoahc  
       2020-08-24 17:17:37 +08:00
    顶楼上 sass 确实很好 但是现实情况是 sass 的 node-sass 模块在安装倚赖的时候很有可能会出幺蛾子 需要科学上网才行(如果有人说连科学上网都不会就不要开发了那请忽视), 会让那些想 git clone 然后安装依赖直接跑项目的人十分沮丧
    redbuck
        31
    redbuck  
       2020-08-24 17:50:47 +08:00
    less 安装方便,但功能有点弱.

    函数不支持 return 你敢信.

    插件也很弱,文档都找不到,github 也没有示例.

    如果只是基本的嵌套,变量,轻量的混合,循环,就 less,轻量.重度用就免了.

    stylus 我没听过它哪里不好啊,node 社区出的,scss 是 node 出来之前其他语言的社区产品,所以才那么多安装问题.
    okampfer
        32
    okampfer  
       2020-08-24 18:34:58 +08:00   ❤️ 3
    为什么你们都在推荐 sass 呢?安装 node-sass 没梯子的话,下载二进制文件出错就会尝试从源码编译,编译有需要 python 环境,每个项目都这样来一下真的超麻烦啊!!!!!有时候晚上网络拥堵即使挂了梯子还是下载不了二进制文件……你们不觉得这是在浪费时间吗?!用国内的 npm 镜像安装 less 要方便的多啊!

    好,你们说可以用 dart-sass,然而,即使我用它,或者干脆我的项目源码不依赖 node-sass,但是项目的依赖项会依赖 node-sass 啊(比如 uni-app )!该死的依赖传递!

    因此我强烈推荐 less 。而且平时做的项目用的 UI library,ant-design 系(面向企业客户尤其用的多)、rsuite 都是用的 less 。
    wa143825
        33
    wa143825  
       2020-08-24 21:05:39 +08:00   ❤️ 1
    我是忠实的 stylus 粉丝,不明白哪里不好,可能都是小项目
    toma77
        34
    toma77  
       2020-08-24 21:44:12 +08:00 via iPhone
    scss + css modules
    echol
        35
    echol  
       2020-08-24 21:57:46 +08:00
    可以用 dark-sass 代替 node-sass
    TsubasaHanekaw
        36
    TsubasaHanekaw  
       2020-08-24 21:59:06 +08:00
    sasss 就是需要单独设置镜像站点而已 ,然后就不用代理了
    npm i -g nrm &
    nrm use taobao &
    npm config set disturl https://npm.taobao.org/mirrors/node/ &
    npm config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/ &
    sunwang
        37
    sunwang  
       2020-08-25 08:38:42 +08:00
    我都是 ui 框架用哪个我就用哪个,例如:element => sass ant-design => less
    lin07hui
        38
    lin07hui  
       2020-11-14 21:07:59 +08:00
    stylus 真香
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3173 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 14:19 · PVG 22:19 · LAX 07:19 · JFK 10:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.