首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基于RequireJS和JQuery的模块化编程——常见问题解析

但是不同点是,require.js加载完会立即执行;而seajs则是等到进入主函数需要执行时才执行。...关于循环依赖的源码可以参考云盘 如何在requirejs中使用jquery 如果想要使用jquery比较简单,直接在main.js添加对应的依赖即可: requirejs.config({ baseUrl...$('#test').html('test'); }); 如何在requirejs中使用jquery插件 对于jquery插件,比较常见的做法都是传入一个jquery的对象,在这个jquery对象的基础上添加插件对应的方法...首先需要添加jquery插件的依赖,这里用两个插件举例子——jquery-ui和jquery-datatables requirejs.config({ baseUrl: './', paths...比如在DOM重构的JS模块,执行渲染的代码下面: require("xxx").initEvents(); 常见场景: 比如我在页面中使用了jquery-steps这个UI插件,它会对页面进行重新渲染

2.9K100
您找到你想要的搜索结果了吗?
是的
没有找到

RequireJS

require 加载依赖模块,并执行加载完后的回调函数 前一篇的a.js: define(function(){ function fun1(){ alert("it works..."); } fun1(); }) 通过define函数定义了一个模块,然后再页面中使用: require(["js/a"]); 来加载该模块(注意require的依赖是一个数组,即使只有一个依赖....js后缀的,当然也是不能写后缀 上面例子的callback函数中发现有$参数,这个就是依赖的jquery模块的输出变量,如果你依赖多个模块,可以依次写入多个参数来使用: require(["jquery...jquery插件,而且这些插件基本都不符合AMD规范,比如jquery.form插件,这时候就需要将form插件"垫"到jqueryrequire.config({ shim: {...exports : "_"; }, "jquery.form" : ["jquery"] } }) 这样配置之后我们就可以使用加载插件后的jqueryrequire.config

14710

【Hybrid开发高级系列】WebPack模块化专题

2.6.6 如何在业务代码里使用Dll文件打包的module/资源?         不需要刻意做些什么,该怎么require就怎么require,webpack都会帮你处理好的了。.../vendor/jquery-1.9.1.min.js'"     },         而在webpack.config.js需要对jQuery单独引用 //jQuery引用插件 var jQueryProvidePlugin...jQuery'       }     ] }         而业务js文件则不需要显示require了 //var $ = require('jquery'); 2.13 支持ES6 Enable...也是一个小技巧吧,我生成的各入口文件的目录如下: 3.2.2 第三方库的打包         项目中用到了一些第三方库,vue、vue-router、jquery、boostrap等。...原因分析:         因为require()函数其实是同步函数,因此对于子模块的引入一定要放在父模块Module的初始化之后,例如: //var lockCtr = require('..

33150

Webpack最佳实践指南

loader 主要是对资源进行加载/转译的预处理工作,其本质是一个函数,在该函数对接收到的内容进行转换,返回转换后的结果。某种类型的资源可以使用多个 loader,执行顺序是从右到左,从下到上。..., promise,include 等,在js文件 require 引入即可eslint-loader:校验 js 是否符合规范,可自行在 eslint 网站上配置下载安装依赖npm i @babel...jquery");providePlugin可使用 webapck 内置插件 providePlugin 给每个模块中注入变量,还是以 jquery 为例在 webapck.config.js 配置const...), ]}copy-webpack-plugin拷贝插件,把某个文件夹导出到打包文件夹文档文件夹( doc 文件夹)安装依赖npm i copy-webpack-plugin -D配置 webpack.config.jsconst...适合没有依赖项的包, jquerymodule: { noParse: /jquery/,}webpack.IgnorePluginwebpack 内置插件 IgnorePlugin 可以阻止生成用于导入的模块

1.2K20

Webpack最佳实践

loader 主要是对资源进行加载/转译的预处理工作,其本质是一个函数,在该函数对接收到的内容进行转换,返回转换后的结果。某种类型的资源可以使用多个 loader,执行顺序是从右到左,从下到上。..., promise,include 等,在js文件 require 引入即可eslint-loader:校验 js 是否符合规范,可自行在 eslint 网站上配置下载安装依赖npm i @babel...jquery");providePlugin可使用 webapck 内置插件 providePlugin 给每个模块中注入变量,还是以 jquery 为例在 webapck.config.js 配置const...), ]}copy-webpack-plugin拷贝插件,把某个文件夹导出到打包文件夹文档文件夹( doc 文件夹)安装依赖npm i copy-webpack-plugin -D配置 webpack.config.jsconst...适合没有依赖项的包, jquerymodule: { noParse: /jquery/,}webpack.IgnorePluginwebpack 内置插件 IgnorePlugin 可以阻止生成用于导入的模块

1K10

Webpack最佳实践

loader 主要是对资源进行加载/转译的预处理工作,其本质是一个函数,在该函数对接收到的内容进行转换,返回转换后的结果。某种类型的资源可以使用多个 loader,执行顺序是从右到左,从下到上。..., promise,include 等,在js文件 require 引入即可eslint-loader:校验 js 是否符合规范,可自行在 eslint 网站上配置下载安装依赖npm i @babel...jquery");providePlugin可使用 webapck 内置插件 providePlugin 给每个模块中注入变量,还是以 jquery 为例在 webapck.config.js 配置const...), ]}copy-webpack-plugin拷贝插件,把某个文件夹导出到打包文件夹文档文件夹( doc 文件夹)安装依赖npm i copy-webpack-plugin -D配置 webpack.config.jsconst...适合没有依赖项的包, jquerymodule: { noParse: /jquery/,}webpack.IgnorePluginwebpack 内置插件 IgnorePlugin 可以阻止生成用于导入的模块

1.2K30

从零搭建一个 webpack 脚手架工具(二)

jquery 模块暴露出来: import $ from "expose-loader?$!jquery"; ?$! 的 $ 就是指被暴露的变量名(expose-loader ? !...$: 'jquery' }) ] } 如果你在 HTML 引入了第三方模块使用 script 标签,但在开发如果再使用 import $ from 'jquery',webpack...该插件需要传入一个参数,你要删除的路径,要删除多个目录可以传入一个数组。 2. copyWebpackPlugin 该插件需要下载。功能是将没有指定为入口的目录的文件拷贝到打包后的目录。...还有一点就是,每次修改配置项都要重新运行命令,这是很费时的一件事,如何在更新配置文件后不用再次重启服务呢?这在下面会说到。...在 devServer 单纯的让 hot = true 是没有作用的,还需要一个 webpack 插件。这个插件是 webpack 内置的插件,不需要下载。

1.4K40

JAVASCRIPT模块化3篇之三:require.js

在上例,就是js目录下面的main.js,这个文件会第一个被require.js加载。由于require.js默认的文件后缀名是js,所以可以把main.js简写成main。...主模块的代码就写在回调函数。 四、模块的加载 上一节最后的示例,主模块的依赖模块是[‘jquery’, ‘underscore’, ‘backbone’]。...比如,jQuery插件可以这样定义:   shim: {     ’jquery.scroll’: {       deps: [‘jquery’],       exports: ‘jQuery.fn.scroll...’     }   } 七、require.js插件 require.js还提供一系列插件,实现一些特定的功能。...domready插件,可以让回调函数在页面DOM结构加载完成后再运行。   require([‘domready!’]

1.6K20

在找一份相对完整的Webpack项目配置指南么?这里有

文件,提取公共文件,模块热更新替换,开发与线上环境区分,使用jQuery插件的方式、页面资源引入路径自动生成(可指定生成位置),热更新编译模版文件自动生成webpack服务器的资源路径,编写一个简单的插件...,以及多CSS文件的合并压缩的考虑才用这种引入方式的 7. jQuery插件的引入方式   目前来说,jQuery及其插件在项目中还是很常用到的,那么就要考虑如何在Webpack中使用它 第一种方法,就是直接页面...标签引入了,但这种方式不受模块化的管理,好像有些不妥 第二种方法,就是直接在模块引入所需要的jQuery插件,而jQuery本身由Webpack插件提供,通过ProvidePlugin...{ test: require.resolve('jquery'), // 将jQuery插件变量导出至全局,提供外部引用jQuery插件使用...entry设置把jQuery提取到了公共文件common 所以正确的做法是common.js文件先于jQuery插件加载 而这个插件只能做到在 或标签尾部插入,我们只好手动挪动一下

3.4K10

Javascript模块化编程(三):require.js的用法

在上例,就是js目录下面的main.js,这个文件会第一个被require.js加载。由于require.js默认的文件后缀名是js,所以可以把main.js简写成main。...主模块的代码就写在回调函数。 四、模块的加载 上一节最后的示例,主模块的依赖模块是['jquery', 'underscore', 'backbone']。...比如,jQuery插件可以这样定义:   shim: {     'jquery.scroll': {       deps: ['jquery'],       exports: 'jQuery.fn.scroll...'     }   } 七、require.js插件 require.js还提供一系列插件,实现一些特定的功能。...domready插件,可以让回调函数在页面DOM结构加载完成后再运行。   require(['domready!']

3K60

JS模块加载系统设计V1

,将$.config函数对象托管给kernel对象 require.config = kernel; 然后在将kernel对象托管给require.config对象,require.config其实就是...$.config函数对象,也就是说你通过require.config传递的参数,实际都会传递给$.config函数,个人觉得这个设计蛮不错的,当我们以后有新的模块需要进行类似的配置时,也可以通过这种方式...(这里用函数表示),如果是吊用该插件,然后通过当前的属性,拿到对应对象的值,将值作为参数传递给该插件。...alias插件,该函数通过维护一个alias集合来保存所有需要加载的文件的别名和对应的js路径 1、首先拿到所有的alias(别名),这里注意: var all = "mass,lang,class,flow..."和一个回调函数参数,下面来分析require方法的源码: window.require = $.require = function(list, factory, parent) {

71250
领券