V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
dabpop139
V2EX  ›  程序员

前端 er 大神们 怎样才能把 NodeJs 玩嗨

  •  
  •   dabpop139 · 2016-08-01 19:55:26 +08:00 · 3031 次点击
    这是一个创建于 3054 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前端 er 大神们 怎样才能把 NodeJs 玩嗨

    • 发这个话题第一个目的是想记录一下学习 NodeJs 的刚开始的“幼稚”观点。第二个目的是真心想把 NodeJs 玩好。

    先吐苦水

    - 强大而晦涩的 package.json

    小小的项目一大堆 devDependencies 各种 loader 完全搞不懂,也看不懂,不得不让我怀疑我的智商,直到至今也只是知道了部分依赖包的作用,而且不同的项目 N 种不同的依赖包方案, scripts 节点里也有各种花样,后面再吐槽。

    - 让人傻眼的 npm

    npm install 简单而暗爽的指令,你再看看 node_modules 你要傻眼,真不敢相信自己的眼睛,一个小项目,两三百个包,看看大小,更让你傻眼 三四百 M ,文件数多达十几万。恩最近 PHP 也来搞这么个东西,典型的应用就是的 Laravel 。最近折腾了不少学习项目,为了省事,我也想了个招,通通用一个 node_modules ,现在那个文件夹 2000 多个包了,满满的幸福感。

    - 让人又爱又恨的 webpack

    webpack 真是个多面手,又可以打包,又可以压缩,又可以做服务,还支持插件。不过 webpack.base.config.js , webpack.dev.config.js , webpack.prod.config.js 让你傻傻分不清楚,而且开起服务的方式又是各种,上面说到的 scripts 节点里的 webpack 的可用参数又是一堆堆。 style!css!autoprefixer , style!css!sass?sourceMap CSS 的 loaders 名字奇葩而看不懂,打包生成出来的 vendors , bundle 文件大小足以吓你一跳。

    - 最让人崩溃的各种错误认人抓狂

    npm install 报错、警告各种, npm start , npm run dev , npm run build , webpack -p 报错、警告各种,打包生成出来的 vendors , bundle 报错各种,最关键是打包生成后报错你还傻傻找不到,开源项目一个折腾又过一个,没有一个能正常跑通,其中种调试和常试。

    爽的地方

    可以直接安依赖包,不用苦苦找网站去下载,不用考虑太多版本的问题,不用重复造轮子。结合 Vue 和 React 可以搞出各种高体验应用、 SPA 应用。 ES6 直接转 ES5 ,还有打包压缩确实做的不错,除了上面我吐槽的不爽以外。

    以上是我接触一段时间的 NodeJs 的一点心得和体会,有说得不妥的地方请指正,想打脸的肯请手下留情,最重要的是大神们请多多支招指教。

    另外欢迎一起讨论学习,戳我 V2EX 头像,再戳我的博客,找找应该有我的联系方式,这里就不写了,怕 V2EX 管理员大牛把我帖子列为广告帖。

    5 条回复    2016-08-02 10:14:28 +08:00
    WittBulter
        1
    WittBulter  
       2016-08-01 20:21:55 +08:00
    看你说的这只是基于 nodejs 的工具,对于 nodejs 来说你还有很长的路要走

    如果感觉不爽,就要扪心自问
    `有没有过度设计?`
    YuJianrong
        2
    YuJianrong  
       2016-08-01 20:25:00 +08:00
    我个人不喜欢依赖太多包,简单的东西能自己动手就动手吧,连个 leftpad 都要 npm 抓我觉得那是有病。
    dabpop139
        3
    dabpop139  
    OP
       2016-08-01 20:31:30 +08:00 via Android
    @YuJianrong 就是感觉依赖包有点滥用的感觉,关键是依赖包还相互牵连依赖,依赖包还要依赖其它包,搞得像蜘蛛网一样。
    menc
        4
    menc  
       2016-08-01 21:41:34 +08:00
    @YuJianrong
    更令人惊讶的是,广大 node 开发者竟然以此为傲
    excuse me ?
    one-line module 竟然是好事情??
    zhouyg
        5
    zhouyg  
       2016-08-02 10:14:28 +08:00
    不过自从知道了 leftpad ,我再也不用离不开了。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   878 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 19:45 · PVG 03:45 · LAX 11:45 · JFK 14:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.