V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Cbdy
V2EX  ›  问与答

现在写前端能绕开 Node.js 吗?

  •  
  •   Cbdy · Aug 14, 2019 · 3439 views
    This topic created in 2447 days ago, the information mentioned may be changed or developed.

    不使用 Node.js 工具链

    26 replies    2019-09-01 19:55:19 +08:00
    SuperMild
        1
    SuperMild  
       Aug 14, 2019
    能啊,为什么不能?只要公司不要求用,就完全可以不用。

    话说,你以前写过前端吗,按老办法就可以了。
    richangfan
        2
    richangfan  
       Aug 14, 2019 via Android
    bootstrap 加 jquery 一把梭
    SuperMild
        3
    SuperMild  
       Aug 14, 2019
    不需要 node.js, 各种新框架都可以用
    SilentDepth
        4
    SilentDepth  
       Aug 14, 2019
    抖个机灵:swc
    learnshare
        5
    learnshare  
       Aug 14, 2019
    能,但何必呢
    daguaochengtang
        6
    daguaochengtang  
       Aug 14, 2019
    可以,但是写的很痛苦。感觉现在切回 jquery 一把梭那种开发方式写的想死。
    SuperMild
        7
    SuperMild  
       Aug 14, 2019
    @nikolausliu 比如 vue 之类的框架也可以不用 node.js
    yixiang
        8
    yixiang  
       Aug 14, 2019   ❤️ 1
    是时候贴个原生 js 写 react 的代码了?不嫌 render 函数用 hyperscript 写着蛋疼的话,也没啥大问题。

    ```
    var e = React.createElement;

    var Comp = function (props) {
    React.Component.call(this, props);
    this.state = {...};
    };
    Comp.prototype = Object.create(React.Component.prototype);
    // 方法
    Comp.prototype.add = function () {};
    // render
    Comp.prototype.render = function () {
    return [
    e('input', { type: 'hidden', name: 'something', value: this.state.something, key: -2 }),
    e('div', { className: 'field', key: -1 },
    e('i', { className: 'icon plus link float-right' , onClick: this.add.bind(this) }),
    e('label', null, '添加')
    ),
    this.state.sentences.map(function (item, i) {
    return e('div', ...);
    }.bind(this)),
    ];
    };
    ```
    yixiang
        9
    yixiang  
       Aug 14, 2019
    xiadd
        10
    xiadd  
       Aug 14, 2019
    可以,systemjs 或者 babel 浏览器端编译,不过用户体验会差点,毕竟是把构建工作移到浏览器端了,如果是后台之类的还可以接受。
    airyland
        11
    airyland  
       Aug 14, 2019
    当然可以,但没真必要。
    toma77
        12
    toma77  
       Aug 14, 2019
    react ssr
    abc635073826
        13
    abc635073826  
       Aug 14, 2019
    最近连接口、数据库都给包办了
    wu67
        14
    wu67  
       Aug 14, 2019
    可以, 用 vue-cli 的话, 基本不用你管什么, 反正就跑一下命令就行了
    ochatokori
        15
    ochatokori  
       Aug 14, 2019 via Android
    能,但是学习 nodejs 花费的成本远比你之后折腾浪费的时间少
    Kilerd
        16
    Kilerd  
       Aug 14, 2019
    可以,rust wasm 一把梭,我现在就在这么尝试把一个简单的站点用 wasm 写
    murmur
        17
    murmur  
       Aug 14, 2019
    你可以把 nodejs 当 bash 理解
    weixiangzhe
        18
    weixiangzhe  
       Aug 14, 2019 via iPhone
    能 但之后会失业
    loading
        19
    loading  
       Aug 14, 2019 via Android
    能。我用 vuejs 都挺舒服。
    wszgrcy
        20
    wszgrcy  
       Aug 14, 2019 via Android
    @Kilerd 坏的很
    OSF2E
        21
    OSF2E  
       Aug 15, 2019
    能。准确说不是绕过,而是等你觉得有用的时候再用,俗称查缺补漏,雅称提升境界。
    yyfearth
        22
    yyfearth  
       Aug 15, 2019
    当然可以 不过为啥给自己添堵呢 除非有是吗特别的原因 为什么不用?

    不用意味着不能用很多 ES 语法 (babel/typescript) 要兼容 IE 只能写 ES5
    而且没办法模块打包 (webpack/rollup/browserify)
    另外就连写模块都还要用 AMD/UMD 才行 不能 import 也没办法直接用 npm 包里面的东西
    herozzm
        23
    herozzm  
       Aug 15, 2019 via iPhone
    看着 node.js 难受 所以我直接 jquery 一把梭
    arYUWang
        24
    arYUWang  
       Aug 15, 2019
    node.js 带来的种种遍历有什么好难受的呢。。。且不失 jQuery 和 NodeJS 不是同一个东西。。。jquery 扣 Element 不会更难受吗
    SuperMild
        25
    SuperMild  
       Aug 15, 2019
    @eugenewangfw
    @herozzm

    不使用 node.js 不等于只能用 jquery, 很多库和框架(比如 vue )也可以不用 node.js 。
    jinsongzhao
        26
    jinsongzhao  
       Sep 1, 2019
    赶时间的项目可以试试 Microsoft Ajax Minifier 帮忙压缩打包。有时间还是得琢磨 node.js ,其实几天时间,一遍就可以了,后面都是重复利用,复制修改配置。否则打包压缩提升性能还是要用到 node.js 。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   947 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 191ms · UTC 22:40 · PVG 06:40 · LAX 15:40 · JFK 18:40
    ♥ Do have faith in what you're doing.