我不喜欢 JavaScript。非常好。我认为这是一种混乱的语言,尽管我会第一个承认这可能是因为我不知道如何用它以及其他语言进行编码。
我浪费了过去三天处理的错误,这些错误都是由于我对异步控制流、回调函数和闭包的理解不足。
我想知道是否有更简单的 JS 编程方法,以便我可以恢复生产力。我目前的堆栈是 Flask、MongoDB、JQuery 和 Bootstrap。理想情况下,我想增加而不是替换那些。
什么框架或工具能够最好地缓解我上面概述的 JS 问题?
我不喜欢 JavaScript。非常好。我认为这是一种混乱的语言,尽管我会第一个承认这可能是因为我不知道如何用它以及其他语言进行编码。
我浪费了过去三天处理的错误,这些错误都是由于我对异步控制流、回调函数和闭包的理解不足。
我想知道是否有更简单的 JS 编程方法,以便我可以恢复生产力。我目前的堆栈是 Flask、MongoDB、JQuery 和 Bootstrap。理想情况下,我想增加而不是替换那些。
什么框架或工具能够最好地缓解我上面概述的 JS 问题?
我建议您学习如何使用jQuery Deferreds。为了使用异步函数进行干净的编程,它们不是必需的,但它们可能是您正在寻找的工具,以提供一些方向和结构。
如果您展示一些对您来说看起来很混乱的代码示例,我们可以提供更多细节。
当我有超过 10 到 15 行代码的回调函数时,我将它们分解为一个命名函数并给它一个名称来描述它的作用。在某些情况下,我什至将其作为现有对象的方法。例如,在一个 API 中,我使用了一个用于登录的 ajax,我有一个称为ProcessLoginResponse()
处理来自 ajax 调用的登录响应的方法。如果登录成功,则此方法必须发出另一个 API 调用,并且我在处理对该 ajax 调用的响应的同一对象上创建另一个方法以继续流程。我用注释记录了流程是如何工作的,但是适当命名的方法使代码看起来很干净,并且很容易知道在哪里设置断点或进行修改。
查看https://github.com/infinitycbs/jflow
它是一个擅长在 node.js 和浏览器中处理异步任务的框架。它还处理具有静态、公共和私有成员的组件结构,如传统 OOP。