gpt4 book ai didi

javascript - 如何在开发和生产中构建 JavaScript 应用程序

转载 作者:可可西里 更新时间:2023-11-01 01:43:51 25 4
gpt4 key购买 nike

我正在构建我的第一个(非意大利面条式的)大型 JavaScript 应用程序。同时介绍RequireJS和其他 JavaScript 依赖管理框架可以更轻松地拆分文件,我不清楚如何将大型代码库推向生产。我想要的是一种聚合和缩小/丑化我的 JavaScript 用于生产的方法,使用类似 Ready.js 的东西和 UglifyJS .或者其他一些可行的方法。

在生产环境中拥有大型 JavaScript 应用的开发人员如何处理他们在开发和生产环境中的结构?

例如,我可以在开发中使用 RequireJS,然后使用 Ready/Uglify 来聚合/缩小。但是这样我的代码就会有毫无意义的 require() 分散在各处。我确信有更好的方法。

我也对在这些文件中包含 jQuery 感到困惑。我是否应该将每个单独的 jQuery 文件(例如使用 jQuery 的 Backbone View )包装在它们自己单独的 $(document).ready(function(){...}) 中?这看起来很不干。

最佳答案

您可以使用 RequireJS optimizer .即使在压缩应用程序中,require 也不是毫无意义的,因为您总是必须获得对模块的引用。优化器文档还说,它不会包含已加载变量的模块,例如

var mods = someCondition ? ['a', 'b'], ['c', 'd'];
require(mods);

我认为 RequireJS 应该等到 DOM 准备好并且所有模块都已加载,这样您就不需要包装每个文件。

也就是说,我最喜欢的包管理器仍然是StealJS .它可以在生产构建中踢出不必要的调用,并且模块始终封装在一个闭包中,该闭包获取传递的 jQuery 对象并等待 DOM 准备就绪并且所有脚本都已加载。不幸的是,它还不兼容 CommonJS 模块规范。

关于javascript - 如何在开发和生产中构建 JavaScript 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8605548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com