从零开始···require.js加载css文件插件require-css
来源:互联网 发布:windows loader 和kms 编辑:程序博客网 时间:2024/06/05 02:38
require.js因为默认加载的文件都是js文件,所以如果要加载css文件的话就得借助插件了。
这里搜索了一下,发现require-css这个插件用的最多,所以随大流看一下这个插件怎么用。
首先当然下载js文件,这个可以去github搜索项目地址下载。
将js文件放入工程目录后,接下来就是敲代码了。
require.config( { paths: { 'jquery': 'js/jquery-3.2.1', 'bootstrap' : 'http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min', }, map: { '*': { 'css': 'js/css' } }, shim: { bootstrap: { deps: [ 'css!http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css' ] } } } );require(["bootstrap"]);
这里在require.config()中添加两个属性,一个是map,一个是shim。
map属性是require.js中一个映射的概念,它的主要作用是解决同名依赖的冲突。也就是两个js文件都有一个名叫module的依赖,但其实依赖的js文件不一样,那么这里就可以在map属性中配置
map{ 'js1':{ 'module':'js-module1' }, 'js2':{ 'module':'js-module2' }}
这里js1和js2中加载的模块就会分别指向正确的文件。
而我们这里的配置就是表示所有的文件都会加载css.js这个文件。
shim属性则是require.js专门用来加载非规范的模块,这里就是用这个属性来加载css文件。deps表示依赖的文件或模块。
不过这里要在地址前加上css!作为标志。
这里有一点要注意的是:
1.可以看到这里bootstrap.js和bootstrap.css的模块名称都一样,所以加载的时候一个require(‘bootstrap’)就可以了。但是如果这里bootstrap不一样,比如bootstrap.css的名称是a的话,这里require(‘a’)还会加载一个a.js文件,当然是没有这个文件导致加载失败。或者会加载可能存在的但你不需要的文件。所以这里的模块名称最好和有依赖关系的js文件一样。
2.在上一节的内容中我是单独加载两个js模块的,后来继续写代码发现无法使用jquery的方法,$对象不存在。后来发现是自己粗心了。
define(['jquery'],function($){ useAjax();});
这里define方法会接受两个参数,一个是依赖的模块,一个是一个函数对象,函数中的参数就是所以来的模块对象,这样就可以使用模块的方法了。
测试:
可以看到这里成功加载了需要的js和css文件。不过可以注意这里的加载顺序,define方法中jquery模块首先加载,然后是map中设置的css模块。而bootstrap模块先加载的是css文件,在执行了define方法的ajax后才加载了bootstrap的js文件。具体原因我还没搞清楚,不过在使用require.js的时候还是要需要注意下这个加载的顺序,以免导致错误。
- 从零开始···require.js加载css文件插件require-css
- 从零开始···require.js
- 用require加载js
- [require.js插件] text.js异步加载文本资源
- PHP文件加载include,require。
- 【Require.js】JavaScript文件和模块加载器
- require.js
- require.js
- require.js
- require.js
- Require.js
- require.js
- Require.js
- require.js
- [require.js]初识require.js
- require.js 模态框上利用defind加载js
- require.js text 插件使用文档翻译
- 初识javascript模块加载器require.js
- CSS优先级
- 一个java学习站
- 三菱数控CNC系统G代码M代码大全
- 读书笔记---Explain Images with Multimodal Recurrent Neural Networks
- oracle知识总结
- 从零开始···require.js加载css文件插件require-css
- 【Java团队用OpenResty】2、Eclipse开发环境搭建
- loj #2051. 「HNOI2016」序列(莫队+ST+单调栈)
- LeetCode 513. Find Bottom Left Tree Value
- 在Keras 和 Tensorflow 框架下五种视频分类的实施方法
- 将类数组转换成数组封装成方法
- 游戏裁剪
- C#struct结构体
- redis 对key的设置操作