require.js结合项目的使用心得
1.首先引入require.js
2.配置config.js文件
var $cdn_url=/'''/''/;----->指定文件一个共用的路径
require.config({
baseUrl: $cdn_url + 'cc/v2/publish/',----->设置一个基本路经,方便找到该路径下的其他文件,不用每次都输入相同路径
// urlArgs: "bust=" + (new Date()).getTime(),---->可以加个时间戳
paths: {
'jquery': $cdn_url + 'assets/libs/jquery',---->jquery.js对应的路径 不需要加.js,require可自己识别
'datepicker': $cdn_url + 'assets/plugins/datepicker/js/datepicker'---->datepicker.js的路径
},
shim: {
'underscore': {
exports: '_'
},
'datepicker':{
deps: ['jquery'],
exports:'datepicker'
},
'daterangepicker':{
deps: ['jquery','moment'],
exports:'daterangepicker'
},
'mobiscroll':{
deps: ['jquery'],
exports:'mobiscroll'
},
'select2': {
exports: 'select2'
},
'pagination': {
deps: ['jquery'],
exports: 'pagination'
},
'calendar': {
deps: ['jquery'],
exports: 'calendar'
},
'tip': {
deps: ['jquery'],
exports: 'tip'
},
'dialog': {
deps: ['jquery'],
exports: 'dialog'
},
'uploader': {
deps: ['jquery'],
exports: 'uploader'
},
'cropper': {
deps: ['jquery'],
exports: 'cropper'
},
'jcrop': {
deps: ['jquery'],
exports: 'jcrop'
},
'validate': {
deps: ['jquery'],
exports: 'validate'
},
'fancybox': {
deps: ['jquery'],
exports: 'fancybox'
}
}
});
3.在html文件引入这两个js文件
<script src="libs/require.js"></script>
<script src="common/js/config.min.js"></script>
4.在js文件使用require
require([
"jquery",
"echarts2",
"dateRangePick",
"tip",
$cdn_url+"js/localData.min.js", $cdn_url+"js/selector.min.js"],function () {
//这里可以使用你引入的js组件
$('.xxx').html(); }
也可以定义一个xx.js,其实就是定义一个模块:
define(
['jquery',
'avalon',
'echarts/echarts',
'common/js/fun.min',
'dialog',
'echarts/chart/line',
'echarts/chart/pie',
'echarts/chart/bar',
'select2',
'tip',
'calendar',
'areapicker',
'pagination',], function
($,
avalon,
echarts,
Fn) {
return {
function1:function(option1){},
table:function(option2){},
}
}
在页面中使用的时候,就可以通过require把这个模块引入到页面中使用
例如:
<script type="text/javascript">
require(['common/js/fun.min', 'common/js/chart.min', 'js/xx.min', 'echarts/echarts', 'select2', 'echarts/chart/line',], function(Fn, chart, dataCenter, echarts){
// 视图 把xx.min.js中的return出来的对象定义名字叫dataCenter。这样一下就可以使用这个对象中的方法table
var upTable = dataCenter.table({
selector: '.js-detail', // 表格选择器
url: 'xxx', // 更新表格URL
vm: vmTable, // 表格avalon视图对象
});
</script>
require.js结合项目的使用心得的更多相关文章
- require.js使用教程
require.js使用教程 下载require.js, 并引入 官网: http://www.requirejs.cn/ github : https://github.com/requirejs/ ...
- require.js使用
无可奈何,二开项目用了require.js! 一道槛是挨不过去了 require官网: http://requirejs.org/ require.js cdn: <script src=&qu ...
- Require,js配置使用心得
首先大家要知道requirejs是干嘛用的,要解释,那就用一句话说下:RequireJS是一个JavaScript文件和模块加载器接下来我们开始学会配置使用requireJs,当然在学习使用的过程中也 ...
- r.js合并实践 --项目中用到require.js做生产时模块开发 r.js build.js配置详解
本文所用源代码已上传,需要的朋友自行下载:点我下载 第一步: 全局安装 npm install -g requirejs 第二步: 1.以下例子主要实现功能, 1)引用jq库获取dom中元素文本, ...
- ASP.NET MVC应用require.js实践
这里有更好的阅读体验和及时的更新:http://pchou.info/javascript/asp.net/2013/11/10/527f6ec41d6ad.html Require.js是一个支持j ...
- Javascript模块化编程之路——(require.js)
转自:http://www.ruanyifeng.com/blog/2012/10/javascript_module.html Javascript模块化编程(一):模块的写法 随着网站逐渐变成&q ...
- require.js入门指南(二)
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- require.js入门指南(一)
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- require.js优化器
项目发布前,require.js优化器可以合并require.js各个模块. 官网: http://requirejs.org/docs/optimization.html 安装 npm instal ...
随机推荐
- Scrapy实战-新浪网分类资讯爬虫
项目要求: 爬取新浪网导航页所有下所有大类.小类.小类里的子链接,以及子链接页面的新闻内容. 什么是Scrapy框架: Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应 ...
- shell-code-1
#!/bin/bash # online test tool: http://www.shucunwang.com/RunCode/shell/ name="pxy"#Attent ...
- H.264基本原理与编码流程
H264视频压缩算法现在无疑是所有视频压缩技术中使用最广泛,最流行的.随着 x264/openh264以及ffmpeg等开源库的推出,大多数使用者无需再对H264的细节做过多的研究,这大降低了人们使用 ...
- HttpServlet RequestDispatcher sendredirect和forward
Servlet的框架是由两个Java包组成:javax.servlet和javax.servlet.http. 在javax.servlet包中定义了所有的Servlet类都必须实现或扩展的的通用接口 ...
- 【10】css hack原理及常用hack
[10]css hack原理及常用hack 原理:利用不同浏览器对CSS的支持和解析结果不一样编写针对特定浏览器样式.常见的hack有1)属性hack.2)选择器hack.3)IE条件注释 IE条件注 ...
- [转]构建Python+Selenium2自动化测试环境(二)
构建Python+Selenium2自动化测试环境完成之后,就需要测试支持python的selenium的版本是否都支持在不同浏览器上运行,当前我们分别在三个最通用的浏览器上通过脚本来测试. 1.在I ...
- A. Nearest Common Ancestors
A. Nearest Common Ancestors Time Limit: 1000ms Case Time Limit: 1000ms Memory Limit: 10000KB 64-bi ...
- zoj 2104 Let the Balloon Rise
Let the Balloon Rise Time Limit: 2 Seconds Memory Limit: 65536 KB Contest time again! How excit ...
- 九度oj 题目1160:放苹果
题目描述: 把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法. 输入: 第一行是测试数据的数目t(0 <= t ...
- AFNetWorking出现code=-1016错误解决办法
报错类似: 2015-12-09 15:58:03.062 Carloans[14328:2300485] Error Domain=com.alamofire.error.serialization ...