V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Sponsored by
LinkedIn
2000 个不用坐班的远程好工作在召唤你 · 弹性上班不打卡,工作和生活都能拥有
2000 个不用坐班的全球远程工作,帮助 V2EX 的小伙伴开启全新的工作方式。
Promoted by LinkedIn
wjx0912
V2EX  ›  JavaScript

export 问题请教

  •  
  •   wjx0912 · 203 天前 · 1000 次点击
    这是一个创建于 203 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需要 export 的函数非常多,差异就是 js 函数名和 URL 地址,c 语言里面有宏,js 有木有好点的处理方法呢?

    7 条回复    2022-03-07 15:18:16 +08:00
    NessajCN
        1
    NessajCN  
       203 天前
    如果你有用框架的话,这种不同 api 配不同函数的方法在 nextjs 里一般是用 dynamic api route 来实现的。
    像是你这里 api 的路径可以是 /api/monitor/jobLog/[job].js
    这里的[job]就可以作为 req.query 变量直接在代码里用,根据不同名字 swtich 不同函数就行
    譬如你向 /api/monitor/jobLob/list 发请求,那么 req.query.job 和这个变量就被赋值成"list",再根据条件找函数
    aleen42
        2
    aleen42  
       203 天前 via Android
    esm 確實還沒支持 dynamic export ,只有 dynamic import (`import()`)

    你可以考慮改用 ConmonJS
    JuzerQ
        3
    JuzerQ  
       203 天前
    用 ejs 就可以,写了个 demo 给你
    https://github.com/qijizh/ejs-demo
    wjx0912
        4
    wjx0912  
    OP
       202 天前
    @NessajCN 谢谢,dynamic api route 是个不错的思路
    wjx0912
        5
    wjx0912  
    OP
       202 天前
    @aleen42
    esm 確實還沒支持 dynamic export ---> 这正是我想知道的答案,现在知道怎么做了。谢谢了
    wjx0912
        6
    wjx0912  
    OP
       202 天前
    @JuzerQ 完美解决方案,请受我一拜~~~
    JuzerQ
        7
    JuzerQ  
       201 天前 via Android
    @wjx0912 感谢采纳,正好了解这个库,第一次得到别人的肯定,挺开心的!像 vite ,vue/cli 这类工具好像就是通过一系列的脚本和 ejs 生成项目的,感觉 nodejs 的能力和 js 语言本身的便利性相互加持下,js 的应用范围真的太广泛了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2553 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 07:17 · PVG 15:17 · LAX 00:17 · JFK 03:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.