草庐IT

commonjs

全部标签

javascript - CommonJS 中的 'promise' 抽象有什么好处?

我正在阅读thisarticle关于promise抽象的部分对我来说似乎有点过于复杂。举例如下:requestSomeData("http://example.com/foo")//returnsapromisefortheresponse.then(function(response){//‘then’isusedtoprovideapromisehandlerreturnJSON.parse(response.body);//parsethebody})//returnsapromisefortheparsedbody.then(function(data){returndata.

javascript - 使用 Browserify/CommonJS 的单例模式

尝试使用Browserify在CommonJS模块中实现单例模式。到目前为止://foo.jsvarinstance=null;varFoo=function(){if(instance){returninstance;}this.num=0;returninstance=newFoo();}Foo.prototype.adder=function(){this.num++;};module.exports=Foo();//主.jsvarfoo=require('./foo.js');console.log(foo.num);//shouldbe0foo.adder();//shoul

javascript - 在 javascript 中使用像 requirejs 或 commonjs 模块这样的 AMD 有什么好处?

我阅读了很多关于AMD解决方案的文章,例如RequireJS或在Javascript中遵循CommonJS风格的模块加载器。假设我有一个分为以下几个部分的应用:依赖于我使用的框架的应用定义依赖于App定义和框架的模型1依赖应用程序定义的模型2、模型1和我的框架我可以将每个部分编写为RequireJS模块或通用JS模块,然后将我的项目拆分为我想要的文件,但是将每个部分编写为模块或将它们拆分为多个文件然后将它们加载到正确的顺序(以避免依赖性问题)可能将所有文件连接成一个大文件以减少HTTP请求(如r.js优化器所做的那样)? 最佳答案

javascript - 允许模块与 AMD/CommonJs 或脚本标签一起工作的包装器?

我刚刚尝试包装我们的一个模块,该模块将通过包含在内在一些样板中标记以允许使用requirejs加载可选的AMD。这很痛苦,我能想到的最好办法是:(function(){varexports,jQuery;if(typeofwindow.define==='function'&&typeofwindow.requirejs==='function'){exports={};define(['jquery'],function(jq){jQuery=jq;returnthisModule();});}else{exports=window;jQuery=window.jQuery;this

javascript - 使用 CommonJS 语法中的文件使用 Karma 和 RequireJS 进行测试

我正在开发一个用CommonJS语法编写的Angular应用程序,并使用grunt任务和grunt-contrib-requirejs任务将源文件转换为AMD格式并将其编译成一个输出文件。我的目标是让Karma与RequireJS一起工作,并使我的源文件和规范文件保持CommonJS语法。我已经能够通过具有以下文件结构的AMD格式的简单测试:--karma-test|--spec|`--exampleSpec.js|--src|`--example.js|--karma.conf.js`--test-main.js和以下文件:karma.conf.js//basepath,thatwi

javascript - 如何在 ES6 模块中导入部分对象

在reactdocumentation我找到了这种导入PureRenderMixin的方法varPureRenderMixin=require('react/addons').addons.PureRenderMixin;怎么改成ES6风格。我唯一能做的就是:importaddonsfrom"react/addons";letPureRenderMixin=addons.addons.PureRenderMixin;希望有更好的方法 最佳答案 不幸的是importstatements不像objectdestructuring那样工作

javascript - Webpack:导出到窗口中的现有模块

我的目标是使用Webpack将一个独立的组件导出到一个假定的全局对象中。index.htmlvarMyApp=window.MyApp||{};MyApp.something=MyApp.something||{};////othermodules/componentsloadedhere...//MyApp.something.myIsolatedModule.run();在上面的例子中,我假设有一个全局对象/模块,它有一个属性something,它将有其他模块附加到它。所以我想将我的隔离模块附加到全局MyApp.something对象,而不破坏MyApp或MyApp.somethi

智能小程序框架——模块化语法参考(ESModule 语法、CommonJS 语法)

小程序的逻辑代码使用JavaScript语法进行编写。可以将一些公共的代码抽离成为一个单独的js文件,作为一个模块,以实现逻辑共享复用。主要有ESModule和CommonJS两种形式。一个项目内应保持使用一种语法形式,否则可能出现导入异常的情况。ESModule语法(推荐)ESModule模块功能主要由两个命令构成:export 和 import。export命令用于规定模块的对外接口,import 命令用于输入其他模块提供的功能。export命令一个模块就是一个独立的文件。该文件内部的所有变量,外部无法获取。如果你希望外部能够读取模块内部的某个变量,就必须使用 export 关键字输出该变

前端技术探秘-Nodejs的CommonJS规范实现原理

了解Node.jsNode.js是一个基于ChromeV8引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型,让JavaScript运行在服务端的开发平台,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。Node中增添了很多内置的模块,提供各种各样的功能,同时也提供许多第三方模块。模块的问题为什么要有模块复杂的前端项目需要做分层处理,按照功能、业务、组件拆分成模块,模块化的项目至少有以下优点:便于单元测试便于同事间协作抽离公共方法,开发快捷按需加载,性能优秀高内聚低耦合防止变量冲突方便代码项目维护几种模块化规范CMD

NodeJs(一):初识nodejs、模块化、CommonJS、ESModule等

目录(一)Nodejs简介1.nodejs是什么2.nodejs架构3.nodejs的应用场景(二)准备工作1.安装nodejs2.nodejs版本管理工具(三)nodejs的使用1.node的输入2.node的输出3.其他的console方法(四)全局对象1.常见的全局对象2.特殊的全局对象3.global和window的区别 (五)模块化***1.什么是模块化2.CommonJS(1)CommonJS的广泛使用(2)CommonJS在Node的使用(3)CommonJS在Node实现的本质(4)module.exports的本质(5)require()查找模块的细节(6)Node模块的加载