npm里的这三个@是什么意思?

   1. npm install -g @angular/cli
   2. import { Component } from '@angular/core';
   3. @Component({
      selector: 'app-root',
      template: `
            <input type="text" [(ngModel)]="username">
            {{username}}
  `    ,
    })
阅读 13.2k
3 个回答

@后面的是scope,一般是公司,或者组织
文档在这
https://docs.npmjs.com/misc/s...

npm install -g @angular/cli

代码中第一行的@跟上面的是一个意思,而第二行的@Component是装饰器,各个语言中都有装饰器,是一种语法糖,理解就是给你甜头,让你可以以很少的代码实现很复杂的功能,但是Angular里的这个@Component感觉语法糖的意义不大,它就是一个装饰器

   import { Component } from '@angular/core';
   @Component({
      selector: 'app-root',
      template: `
            <input type="text" [(ngModel)]="username">
            {{username}}
      `,
    })

下面是angular中装饰器的文档
https://angular.cn/api/core/T...

同时ES6中也有装饰器,vue、react等框架都有装饰器的实现,也可以自己去实现一个装饰器。

JAVA中对应的就是注解。

npm 的用户名是 angular

这个地方的@。。。应该是包名为@angular/cli吧。。
如果是angular/cli@xx,那么意思是指定安装包的确定版本。
补充:
第一个和第二个的@都是angular的包的通用前缀@angular
第三个@则是angular的固定写法
至于为什么angular要这么做。。我也是懵逼的。大概只是写法突出表示吧。

推荐问题
宣传栏