JS 里面 @开头的语句是什么意思?

2018-08-18 17:52:16 +08:00
 wktrf
@connect(({counter}) => ({
  counter
}), (dispatch) => ({
  add() {
    dispatch(add())
  },
  dec() {
    dispatch(minus())
  },
  asyncAdd() {
    dispatch(asyncAdd())
  }
}))

这是 taro 脚手架创建连 redux 的示例代码,但是我居然看不懂别人的示例 DEMO。。。好气

如标题,这里的 @代表什么?我只见到过 @param 这种注释里面的

5524 次点击
所在节点    JavaScript
9 条回复
noe132
2018-08-18 17:58:51 +08:00
如果你学过 java 就能猜出这是 Decorator.
属于 Stage 2 的功能。
https://github.com/tc39/proposal-decorators
BugFree
2018-08-18 17:59:37 +08:00
ES6 的修饰器
zhuxiaoxi
2018-08-18 18:01:12 +08:00
装饰器,很多语言都有
msputup
2018-08-18 18:02:04 +08:00
装饰器了解一下
nanau2016
2018-08-18 19:41:57 +08:00
可以参考一下我的 example,完整的 react+redux 项目,里面就有你提到的 @语法,https://github.com/DevilZh/Frontend-Task
blanu
2018-08-18 19:49:39 +08:00
实际就是 getter setter 语法糖
magicdawn
2018-08-18 21:09:23 +08:00
Java Annotation
c# Attribute
Python JavaScript decorator

都是一个意思
chinafu
2018-08-19 00:01:53 +08:00
Decorator.
frankkai
2018-08-19 09:55:11 +08:00
@还是在 spring 中做注解比较多

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/481014

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX