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结合项目的使用心得的更多相关文章

  1. require.js使用教程

    require.js使用教程 下载require.js, 并引入 官网: http://www.requirejs.cn/ github : https://github.com/requirejs/ ...

  2. require.js使用

    无可奈何,二开项目用了require.js! 一道槛是挨不过去了 require官网: http://requirejs.org/ require.js cdn: <script src=&qu ...

  3. Require,js配置使用心得

    首先大家要知道requirejs是干嘛用的,要解释,那就用一句话说下:RequireJS是一个JavaScript文件和模块加载器接下来我们开始学会配置使用requireJs,当然在学习使用的过程中也 ...

  4. r.js合并实践 --项目中用到require.js做生产时模块开发 r.js build.js配置详解

    本文所用源代码已上传,需要的朋友自行下载:点我下载 第一步: 全局安装  npm install -g requirejs 第二步: 1.以下例子主要实现功能, 1)引用jq库获取dom中元素文本, ...

  5. ASP.NET MVC应用require.js实践

    这里有更好的阅读体验和及时的更新:http://pchou.info/javascript/asp.net/2013/11/10/527f6ec41d6ad.html Require.js是一个支持j ...

  6. Javascript模块化编程之路——(require.js)

    转自:http://www.ruanyifeng.com/blog/2012/10/javascript_module.html Javascript模块化编程(一):模块的写法 随着网站逐渐变成&q ...

  7. require.js入门指南(二)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  8. require.js入门指南(一)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  9. require.js优化器

    项目发布前,require.js优化器可以合并require.js各个模块. 官网: http://requirejs.org/docs/optimization.html 安装 npm instal ...

随机推荐

  1. Makefile文件中的sed介绍

    haoxin$ sed --helpUsage: sed [OPTION]... {script-only-if-no-other-script} [input-file]... -n, --quie ...

  2. 求分数序列的前n项之和

    有一个分数序列 2/1,3/2,5/3,8/5,13/8,21/13,.... 求这个分数序列的前n项之和. 输入 测试数据有多组,其第一行为一个正整数k(0<k<=90),表示测试数据的 ...

  3. return_url notify_url

    return_url对返回订单状态进行更新和判断,notify_url为异步调动页面,需要先判断notify_url里是否对订单数据做过处理,避免重复更新数据,然后如果用户付款成功直接关闭页面,会造成 ...

  4. IIS PUT

    测试版本:IIS6.0 利用工具 1.IIS PUT Scaner By ZwelL 2.桂林老兵IIS写权限利用程序   -------------------------------------- ...

  5. jsp jstl标签库 el表达式

    一.JSTL标签是什么? 提供了对国际化(I18N)的支持,它可以根据发出请求的客户端地域的不同来显示不同的语言. 同时还提供了格式化数据和日期的方法.实现这些功能需要I18N格式标签库(I18N-c ...

  6. A. Nearest Common Ancestors

    A. Nearest Common Ancestors Time Limit: 1000ms Case Time Limit: 1000ms Memory Limit: 10000KB   64-bi ...

  7. BNUOJ4359 无爱编号

    无爱编号 Time Limit: 2000ms Memory Limit: 65536KB   64-bit integer IO format: %lld      Java class name: ...

  8. ajax dome案例

    一.首先HTML页面 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...

  9. HackerRank# Candies

    原题地址 LeetCode上也有这道题,直接扫一遍就行了,连数组都不用开,感觉像是蕴含了某种动归的思想在里面,要不怎么是个动归题呢 代码: #include <cmath> #includ ...

  10. POJ 2396 Budget ——有上下界的网络流

    给定矩阵的每行每列的和,和一些大于小于等于的限制.然后需要求出一组可行解. 上下界网络流. 大概的思想就是计算出每一个点他需要强行流入或者流出的量,然后建出超级源点和汇点,然后删除下界,就可以判断是否 ...