将JavaScript文件导入一个文件的最佳方法?
我有使用“类”概念的语言进行编码的背景。现在我正在编写JavaScript,我想以类似的方式编写代码,以便我创建的每个面向对象的“类”都是它自己的独立文件将JavaScript文件导入一个文件的最佳方法?,javascript,oop,Javascript,Oop,我有使用“类”概念的语言进行编码的背景。现在我正在编写JavaScript,我想以类似的方式编写代码,以便我创建的每个面向对象的“类”都是它自己的独立文件 看 看 在其他语言中,我会在类文件的顶部创建import语句,以确保在类文件中使用其他自定义类,从而将其他自定义类编译成最终的二进制文件 当然,JavaScript不是一种编译语言;但是,我仍然希望能够在自定义类文件的顶部包含某种“import”语句,以便确保导入的JS“class”文件可供用户的浏览器下载 如果有一个第三方工具将我的所有
- 看
- 看
- 看
那么,是否有第三方工具允许开发人员使用某种“导入”语句注释,以确保将许多依赖的JS文件(以及仅开发人员需要的文件)合并到单个JS文件中?正是为此目的而构建的。请看一看。它允许您以模块化的方式导入各种javascript文件,并在它们之间添加所需的依赖项。最后,您还可以使用r.JS将它们缩小为一个单独的JS文件,一个简单的批处理文件可以为您做到这一点:
@for %i in (classes/*.js) type %i >> build.js
如果您的JS源文件都在一个文件夹中,并且本例假设该文件夹名为classes
,则这种方法效果最好。如果有子文件夹,它会变得有点复杂,但是可以应用类似的原理。看看,JQuery使用它来构建。如果您不关心HTTP请求,您可以使用前面提到的RequireJS,它也有很好的异步方法来加载文件,在某些情况下可以提高性能。查看这个类
这允许在类中动态导入。它还允许
用于导入文件夹及其所有子文件夹中的所有类。
它非常简单,因为它只是一个添加到字符串中的原型函数。
只需添加导入器类,就可以调用“com.project.Classfile.js.import()等类;
或“com.project.*.import()”以获取所有子类。
fork-on-假设.js文件中没有不可靠的结构,
cat*.js>megafile.js
就可以了。这不完全是你想要的,但js不是你的典型语言,事情的运作方式有点不同。。。试试Grunt:这不会触发对每个所需脚本的HTTP请求吗?只有在您让它动态加载一个模块的情况下。@waynekoots如何运行RequireJS以创建一个JS文件,然后我可以使用它在HTML页面上发布?本质上,我试图在发布代码之前将其编译成单个文件。谢谢@jaxim:下面的文档描述得很好:@WayneKoorts在对RequireJS做进一步研究后,我发现了另外两个实用程序:榨汁机和链轮;这么简单,但工作确实如此。css和html文件呢?你能解释一下这个脚本在做什么吗?它非常简单,翻译成英语:“对于classes文件夹中的每个.js文件,将其内容附加到build.js”——它将所有文件连接在一起。不过,在运行之前,您需要删除任何预先存在的build.js。。。