关于vuex与Ramda.js mutations正确方式如何?

各位大大,前周看了阮大大关于函数式编程介绍Ramda.js学习了下。
但应用在Vuex的框架下,关于mutaions state赋值不知正确的姿势如何?

mutations example 假设通过函数式编程计算后要变更count值:

const store = new Vuex.Store({
state: {

count: 1

},
mutations: {

increment (state) {
    // 方式1: 这样无法变更值
    state = R.assoc('count', 3, state)
    
    // 方式2: 把count包进去另外个package object (这样可以变更值)
    state.package = R.assoc('count', 3, state.package)
}

}
})

请问如果要使用Ramda.js正确的赋值方式姿势如何??

阅读 3.4k
2 个回答

vue框架属于申明式,与ramda的函数式是完全两个方向。不建议使用

vue中使用函数式编程是完全可行的,而不一定会有冲突。
一开始技术选型时我也困扰过怕合不到一起。。。但在实际使用中优大于劣。
vue与ramda结合的项目架构

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题