requireJs require.config公共配置
//场景:让require.config配置文件成一个公共文件,每个页面引用这个公共配置
//方式一样例:
require.config({
baseUrl: (function () {
var pathName = document.location.pathname;
var index = pathName.substr(1).indexOf("assets/");
var result = pathName.substr(0, index + 1);
return result;
})()+'assets/js/', //基础目录,最好使用绝对路径,不然被路径搞得晕头转向,/开头, (../上一级目录 ./当前目录 /根目录)
paths:{
"jquery":"plugins/jquery/jquery-1.8.0.min",
"text":"plugins/require-text/text",
'Handlebars':'plugins/handlebars/handlebars',
'underscore':'plugins/underscore/underscore-min'
},
shim:{
'pocFilter':{
deps:['jquery'],
exports: 'pocFilter'
}
}
}); //引用require.js
<script src="scripts/require.js" data-main='scripts/business/example'></script> //example.js使用公共配置
require(['scripts/config'], function() {
// Configuration loaded now, safe to do other require calls
// that depend on that config.
require(['jquery'], function($) { });
}); //方式二: 1、html页面:
<script src="require.js" defer async="true" data-main="page1"></script> 2、page1.js:
require(['config'],function(){
require(['app/controller1'])
}) 3、controller1.js:
define(function(require,exports,module){
var $=require('jquery');
console.info($)
}) //参考资料-https://github.com/requirejs/example-multipage.git //模块定义方式 //1.简单的键值对形式 Simple Name/Value Pairs
define({
"name":"leyi",
"sex":"male"
}); //2.定义函数型模块 Definition Functions
define(function(){
function setName(name){
console.info(name)
}
function setSex(sex){
console.info(sex)
} return {
"setName":setName,
"setSex":setSex
}
}); //2.定义函数型模块(有依赖模块) Definition Functions with Dependencies define(['jquery'],function($){
return {
"lookDependencies":function(){
console.info($)
}
}
}); //3.模块不必返回对象。允许从函数中返回任何有效值 define(['jquery'],function($){
return function(){
return 'hello world!'
}
}); //4.用commonJS方式定义模块
define(function(require,exports, module){
var $=require('jquery');
return function(){
console.info($)
}
}) //5.定义一个有名称的模块(不推荐显式指定模块名称)
define("leyi",function(require,exports, module){
var $=require('jquery');
return function(){
console.info($)
}
}); //注意事项: /*一个文件一个模块: 每个Javascript文件应该只定义一个模块,
这是模块名-至-文件名查找机制的自然要求。
多个模块会被优化工具组织优化,但你在使用优化工具时应将多个模块放置到一个文件中。*/ /*
define()中的相对模块名: 为了可以在define()内部使用诸如require("./relative/name")的调用以正确解析相对名称,
记得将"require"本身作为一个依赖注入到模块中:
define(["require", "./relative/name"], function(require) {
var mod = require("./relative/name");
});
或者更好地,使用下述为转换CommonJS模块所设的更短的语法:
define(function(require) {
var mod = require("./relative/name");
});*/
requireJs require.config公共配置的更多相关文章
- spring cloud (八) Config client 和项目公共配置
1 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...
- SpringCloud创建Config多客户端公共配置
1.说明 基于已经创建好的Spring Cloud配置中心, 在配置中心仅保存一套配置文件, 多个客户端可以通过配置中心读取到相同的配置, 而不需要在每个客户端重复配置一遍, 下面以一个Config ...
- requirejs、backbone.js配置
requirejs初探 参考资料官网:http://requirejs.org中文译文:http://makingmobile.org/docs/tools/requirejs-api-zh reuq ...
- avalon 中require.config源码分析
/********************************************************************* * 配置系统 在系统运行的开始就需要读取系统中requir ...
- vue-cli的webpack模版,相关配置文件dev-server.js与webpack.config.js配置解析
1.下载vue-cli npm install vue-cli -g vue-cli的使用与详细介绍,可以到github上获取https://github.com/vuejs/vue-cli 2.安装 ...
- springcloud-spring cloud config统一配置中心
统一配置中心 为什么需要统一配置中心? 统一配置中心顾名思义,就是将配置统一管理,配置统一管理的好处是在日后大规模集群部署服务应用时相同的服务配置一致,日后再修改配置只需要统一修改全部同步,不需要一个 ...
- @vue/cl构建得项目下,postcss.config.js配置,将px转化成rem
依赖包: postcss-pxtorem 配置: 在项目根目录下创建 postcss.config.js 配置如下: module.exports = () => ({ plugins: [ r ...
- Spring Boot 揭秘与实战 附录 - Spring Boot 公共配置
Spring Boot 公共配置,配置 application.properties/application.yml 文件中. 摘自:http://docs.spring.io/spring-boot ...
- html中require.config 缓存问题
在html中,require的官方基本用法如下: <!DOCTYPE html> <html> <head> <title>My Sample Proj ...
随机推荐
- 6-12mysql库的操作
1,mysql库的各种分类: nformation_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等. performance_sch ...
- 启动项目时,mapper.xml文件没有导入
原因分析:绑定的statement没有发现,原因是只有mapper接口的java文件,没有xml文件 解决方法:需要在pom文件中进行配置 <!-- 如果不添加此节点mybatis的mapper ...
- 【Math for ML】线性代数之——向量空间
I. Groups 在介绍向量空间之前有必要介绍一下什么Group,其定义如下: 注意定义中的\(\bigotimes\)不是乘法,而是一种运算符号的统一标识,可以是乘法也可以是加法等. 此外,如果\ ...
- Focal Loss理解
1. 总述 Focal loss主要是为了解决one-stage目标检测中正负样本比例严重失衡的问题.该损失函数降低了大量简单负样本在训练中所占的权重,也可理解为一种困难样本挖掘. 2. 损失函数形式 ...
- Git学习笔记07-删除文件
在Git中,删除也是一种修改.先新建一个文件,添加并提交.然后删除下看看. 一般删除直接从工作区把文件删了,或者使用rm命令 这是使用git status查看状态,会告诉我们删了哪个文件 这个 ...
- Git学习笔记06-版本回退
在实际中,向版本库提交多次后,几千行代码肯定不记得每次都改了什么,可以使用git log来查看提交日志.也就是git commit -m 后面填写的这部分内容 也可以使用git log --pre ...
- win7 vs2012/2013 编译boost 1.55
bjam install stage --toolset=msvc-11.0 --stagedir="C:\Boost\boost_vc_110" link=shared runt ...
- 题解-CodeForces700E Cool Slogans
Problem 题目链接 题目大意:给定一个字符串,每次取出出现至少两次的子串替换原串,问最多能替换多少次,输出答案加一(字符串长为\(2×10^5\)) Solution 前置技能:SAM.线段树合 ...
- 深度神经网络(DNN)是否模拟了人类大脑皮层结构?
原文地址:https://www.zhihu.com/question/59800121/answer/184888043 神经元 在深度学习领域,神经元是最底层的单元,如果用感知机的模型, wx + ...
- where 和 having区别
WHERE语句在GROUP BY语句之前:SQL会在分组之前计算WHERE语句. HAVING语句在GROUP BY语句之后:SQL会在分组之后计算HAVING语句.