es6 双箭头函数调用 连续箭头函数的理解 初识柯里化

例子来源:
https://vuex.vuejs.org/zh/guide/getters.html#通过方法访问
你也可以通过让 getter 返回一个函数,来实现给 getter 传参。

()=>()=>{}

参考
:es6 双箭头函数调用有什么意义?
https://segmentfault.com/q/1010000016320367

let getters = {
    total: (state) => (symbol) => {
        return (symbol || '$') + state.count;
    }
}
// 等效于
let getters = {
    total: function(state) {
         return function(symbol) => {
            return (symbol || '$') + state.count;
        }
    }
}

getters.total(state)(symbol)  //调用成功

柯里化参考:

皮小蛋:邂逅函数柯里化 https://segmentfault.com/a/1190000008263193
沃趣葫芦娃:大佬 JavaScript 柯里化,了解一下? https://juejin.im/post/5af13664f265da0ba266efcf
冴羽: JavaScript专题之函数柯里化 https://github.com/mqyqingfeng/Blog/issues/42

mapGetters

https://vuex.vuejs.org/zh/guide/getters.html#mapgetters-辅助函数
当有参数的getters 写成

getters: {
  // ...
  getTodoById: (state) => (id) => {
    return state.todos.find(todo => todo.id === id)
  }
}

这样的时候,如果使用mapGetters辅助函数,其数组简写形式和无参的getters没有区别

  computed: {
    ...mapGetters(['doneTodosCount', 'doneTodos','getTodoById']),
    // getTodoById() {
    //   return this.$store.getters.getTodoById(2);
    // }
  },

只是在最终调用的时候,需要指出参数,如下,{{getTodoById(2)}}

<div>
      <hr>
      <p>getters</p>
      <p>{{doneTodosCount}}</p>
      <p>{{doneTodos}}</p>
      <p>{{getTodoById(2)}}</p>
    </div>
  </div>
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 可以使用Matplotlib库中的annotate函数来绘制箭头。以下是一个简单的示例代码: ```python import matplotlib.pyplot as plt # 创建图形对象和坐标系 fig, ax = plt.subplots() # 绘制两个点 x1, y1 = 0, 0 x2, y2 = 1, 1 # 绘制箭头 ax.annotate("", xy=(x2, y2), xytext=(x1, y1), arrowprops=dict(arrowstyle="<->")) # 显示图形 plt.show() ``` 在该示例代码中,我们首先创建了一个图形对象和坐标系。然后,我们定义了两个点的坐标,并使用annotate函数在这两个点之间绘制了一个箭头。最后,我们使用show函数显示图形。 ### 回答2: 要在Python图上绘制箭头,可以使用matplotlib库中的pyplot模块来实现。下面给出一个简单的示例代码来绘制箭头。 ```python import matplotlib.pyplot as plt import numpy as np # 创建一个图表和子图对象 fig, ax = plt.subplots() # 设置坐标轴范围 ax.set_xlim(0, 10) ax.set_ylim(0, 10) # 绘制两个箭头,起点为(2, 2),终点为(8, 8) ax.annotate('', xy=(8, 8), xytext=(2, 2), arrowprops=dict(arrowstyle='<->')) # 绘制两个箭头,起点为(2, 8),终点为(8, 2) ax.annotate('', xy=(8, 2), xytext=(2, 8), arrowprops=dict(arrowstyle='<->')) # 显示图表 plt.show() ``` 在这个例子中,我们使用annotate函数来绘制箭头。它的第一个参数是箭头的注释文本(此处为空),第二个参数是箭头的终点xy值,第三个参数是箭头的起点xy值。箭头的样式通过arrowprops参数来定义,使用字典形式传入。在这里,我们使用了arrowstyle='<->'来绘制箭头。 这段代码运行后将会弹出一个图表窗口,显示了两个交叉的箭头。你可以根据自己的需要修改箭头的起点和终点,以及其他的样式参数。 ### 回答3: 在Python中,可以使用matplotlib库来绘制箭头。具体步骤如下: 1. 导入需要的库。 ``` import matplotlib.pyplot as plt ``` 2. 创建一个画布和坐标系。 ``` fig, ax = plt.subplots() ``` 3. 绘制箭头。 ``` ax.arrow(0, 0, 0.5, 0.5, head_width=0.05, head_length=0.1, fc='red', ec='red') ax.arrow(0, 0, -0.5, 0.5, head_width=0.05, head_length=0.1, fc='red', ec='red') ``` - 第一个箭头从原点开始,向右上方移动0.5个单位,并设置箭头头部的宽度为0.05,长度为0.1,箭头的填充颜色为红色。 - 第二个箭头从原点开始,向左上方移动0.5个单位,并使用相同的设置。 4. 设置坐标轴的范围。 ``` ax.set_xlim([-1, 1]) ax.set_ylim([-1, 1]) ``` 5. 显示图形。 ``` plt.show() ``` 通过以上步骤,就可以绘制出一副带有箭头的图形。当然,你可以根据需要自定义箭头的方向、位置、大小和颜色等属性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值