V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GM
V2EX  ›  Node.js

为什么前端界这么喜欢用 @ 号做为包名前缀?有什么好处或者目的吗?

  •  
  •   GM · 2021-09-23 16:32:13 +08:00 · 9569 次点击
    这是一个创建于 1191 天前的主题,其中的信息可能已经有所发展或是发生改变。
    17 条回复    2021-10-25 10:16:05 +08:00
    AoEiuV020
        1
    AoEiuV020  
       2021-09-23 16:36:08 +08:00   ❤️ 1
    带 @多一级不会和别人重复,比如我有个包叫 hello, 但全局的 hello 已经有人占了,我就可以发在自己名下叫做 @AoEiuV020/hello
    randyo
        2
    randyo  
       2021-09-23 16:37:15 +08:00
    最近配置 .npmrc,设置了 registry 为淘宝源,又设置另一个私有包到私有源,发现不带 @ 它就走淘宝源,给私有包加了 @ 再配置,就可以了。这个私有包走私有源,其他包走淘宝源。
    L1shen
        4
    L1shen  
       2021-09-23 16:38:06 +08:00   ❤️ 2
    @ 代表是 npm 上的一个组织,也有命名空间的作用
    ayase252
        5
    ayase252  
       2021-09-23 16:39:30 +08:00
    避免 npm 包命名冲突。
    比如 facebook 上传了个叫 react 的包,其他所有开发者都不能够使用 react 这个名字了。
    cydysm
        6
    cydysm  
       2021-09-23 16:44:13 +08:00
    https://docs.npmjs.com/cli/v7/using-npm/scope
    这个叫 scope
    Scopes are a way of grouping related packages together, and also affect a few things about the way npm treats the package.

    Each npm user/organization has their own scope, and only you can add packages in your scope. This means you don't have to worry about someone taking your package name ahead of you. Thus it is also a good way to signal official packages for organizations.
    suzic
        7
    suzic  
       2021-09-23 17:24:51 +08:00 via Android
    好像是谷歌先这么干的
    dropsio
        8
    dropsio  
       2021-09-23 18:09:21 +08:00
    一切源于模仿...
    Biwood
        9
    Biwood  
       2021-09-23 18:22:00 +08:00   ❤️ 5
    什么叫喜欢用 @ ,这不是 npm 中的 scope 定义方式吗,通过这帖子发现不少“知其然不知其所以然”的人
    mightofcode
        10
    mightofcode  
       2021-09-23 18:33:18 +08:00
    yep
    KouShuiYu
        11
    KouShuiYu  
       2021-09-23 18:39:47 +08:00
    因为这是 npm 推荐的方式 https://docs.npmjs.com/cli/v7/using-npm/scope
    GM
        12
    GM  
    OP
       2021-09-24 08:40:08 +08:00
    @Biwood 这位兄台,莫非你对所有东西都“知其然且知其所以然”?你从来不碰到疑问?碰到不了解的事情你都不问问题??
    OliveGlaze
        13
    OliveGlaze  
       2021-09-24 16:54:56 +08:00
    前端工程化,@表示 scope

    至于为啥用 @表示就不清楚了。我只能说 convention 千千万,能找到个常用符号表示就说明这个 convention 是还算是值得一学一用的。
    magicdawn
        14
    magicdawn  
       2021-09-24 18:33:33 +08:00
    前端还喜欢 包 @版本

    npm i lodash@latest

    就是取 @的 At 意思吧, 然后 @username / orgname 表示用户的, 互联网上大家用惯了, weibo twitter
    alanhe421
        15
    alanhe421  
       2021-10-05 21:55:51 +08:00
    scope......
    zxCoder
        16
    zxCoder  
       2021-10-16 08:03:25 +08:00
    还喜欢用 @next
    dany813
        17
    dany813  
       2021-10-25 10:16:05 +08:00
    @yunyuyuan 这个解释的不错
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1168 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 18:16 · PVG 02:16 · LAX 10:16 · JFK 13:16
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.