关于base的默认路径:
【官方说明】: 模块系统的基础路径即 base 的默认值,与 sea.js 的访问路径相关: 如果 sea.js 的访问路径是: http://example.com/assets/sea.js
则 base 路径为: http://example.com/assets/
当 sea.js 的访问路径中含有版本号时,base 不会包含 seajs/x.y.z 字串。 当 sea.js 有多个版本时,这样会很方便。
如果 sea.js 的路径是: http://example.com/assets/seajs/1.0.0/sea.js
则 base 路径是: http://example.com/assets/

seajs的默认路径依赖:127.0.0.1/foo/assets/seajs/sea.js,当前sea.js所在的目录或seajs文件夹所在的目录【assets/】
其他路径的话需要重新设置路径,比如127.0.0.1/foo/public/base/sea.js
我要设置public为默认路径,在config里设置base:’./public’

‘./‘是当前默认目录,当前默认目录是网站根目录开始

当然,也可以手工配置 base 路径:
seajs.config({
base: 'http://code.jquery.com/'
});
在模块代码里:
require.resolve('jquery');
// => http://code.jquery.com/jquery.js
【注意】:一般请不要配置 base 路径,把 sea.js 放在合适的路径往往更简单一致。
【参考】:https://github.com/seajs/seajs/issues/258

引入后的调试方法:
alert(require.resolve('jquery'));
alert($);

常见问题
问题一:
改变了jquery.js存放的目录后,文件已经加载,但无法引用。 这个是因为路径于不匹配导致的。 你用的是从seajs官方下载的jquery源,它是打包好的cmd模块,只不过比较特殊而已。ID 是 jquery/jquery/1.10.1/jquery,seajs的define默认ID是于路径想匹配的,所以改变路径后就引用不到。 如果是非官方的jquery源,你就必须自己处理,暴露出方法接口:

jquery.js

define(function(require,exports,module) {
module.exports = jQuery;
});

main.js

define(function(require, exports, module) {
var $ = require('jquery');
})

或者直接引用

define(function(require, exports, module) {
require('jquery');
})

【参考】:https://github.com/seajs/seajs/issues/962

seajs使用记录的更多相关文章

  1. 深入seajs源码系列二

    模块类和状态类 参照上文的demo,我们结合源码分析在简单的API调用的背后,到底使用了什么技巧来实现各个模块的依赖加载以及模块API的导出. 首先定义了一个Module类,对应与一个模块 funct ...

  2. seajs源码分析

    seajs主要做了2件事 1.定义什么是模块,如何声明模块:id.deps.factory.exports ----define=function(id,deps,factory){return ex ...

  3. 折腾一两天,终于学会使用grunt压缩合并混淆JS脚本,小激动,特意记录一下+spm一点意外收获

    很长时间没有更新博客了,实在是太忙啦...0.0 ,以下的东西纯粹是记录,不是我原创,放到收藏夹还担心不够,这个以后常用,想来想去,还是放到这里吧,,丢不了..最后一句废话,网上搜集也好原创也罢,能解 ...

  4. seajs 源码阅读笔记

    代码概览 src目录文件列表如下: 代码以模块化的方式来组织,构建的时候会合并为一个js文件(sea.js 或 sea-debug.js),其中,intro.js和 outro.js 分别是这个js文 ...

  5. 前端模块化开发之seaJs

    了解后端语言的童鞋一定听过模块化开发的概念,比如java.python等后端语言都有自己的模块化特性,然而和后端语言相比,javascript还尚未实现模块化的功能,虽然之后的更高版本可能引入模块化开 ...

  6. seajs中spm压缩工具使用

    seajs是个好东西,用起来很方便,但是她的压缩工具spm确不被网友看好,因为使用起来很麻烦,捯饬了一天多,终于勉强能压缩了,这里就简单记录一下. 按照地址:http://www.zhangxinxu ...

  7. seajs 源码解读

    之前面试时老问一个问题seajs 是怎么加载js 文件的 在网上找一些资料,觉得这个写的不错就转载了,记录一下,也学习一下 seajs 源码解读 seajs 简单介绍 seajs是前端应用模块化开发的 ...

  8. Mod 与 RequireJS/SeaJS 的那些事

    本文的目的是为了能大让家更好的认识 Mod,之所以引入 RequireJS/SeaJS 的对比主要是应大家要求更清晰的对比应用场景,并不是为了比较出孰胜孰劣,RequireJS 和 SeaJS 都是模 ...

  9. 初尝seajs,只提供自己学习做笔记

    (仅供自己使用,勿喷) 闲着无聊,尝试下seajs, 只是在公司项目上随便添加并测试了一下,做下记录, 方便以后自己使用更快的上手: 下载最新的sea.js, v- 3.0.0 新建seajsConf ...

随机推荐

  1. python 操作word文档

    因为工作需要操作一些word文档,记录一下学习思路 #-*- encoding: utf8 -*- import win32com from win32com.client import Dispat ...

  2. hql & mysql 札记

    最近在某D实习,刚去就开始各种写HQL,碰壁很多次. 几个知识点记录一下,逐个攻破. sql 中的case when, 选择循环的写法.(http://www.cnblogs.com/zengen/a ...

  3. H - Frequent values

    Problem F: Frequent values You are given a sequence of n integers a1 , a2 , ... , an in non-decreasi ...

  4. Android进阶笔记20:Android手机屏幕坐标系

    1. 手机屏幕坐标系: 整个坐标系是以手机屏幕左上角为原点(0,0),如下:

  5. 通用权限管理系统接口文档V4.2 版本之角色管理功能介绍

    角色功能维护界面:可实现添加.修改.删除角色,向角色添加或删除人员,角色具有哪些菜单的管理功能.

  6. ValidateRequest="false" 无效

    在做牛腩新闻发布系统的时候,部分同学可能会遇到这样的情况: 从客户端(ContentPlaceHolder1_m_ContentPlaceHolder_ftbContent="<P&g ...

  7. vb.net中的SqlHelper

    1.定义: SqlHelper是一个基于·NET Framework的数据库操作组件.组件中包含数据库操作方法.SqlHelper用于简化你重复的去写那些数据库连接(SqlConnection),Sq ...

  8. mongdb Java demo

    接触MONGDB,感觉用起来还挺好.今天做了一个小demo. 一.启动mongdb的服务

  9. 【MongoDB】MongoDB VS SQL数据库

    MongoDB和SQL数据库都能满足数据库的基本功能:1.有组织的存放数据:2.按照需求查询数据 传统的SQL数据库(e.g.Oracle, MySQL) 对表的运用不够灵活,横向扩展不太容易,而它的 ...

  10. Linux之cuda安装

    1.下载https://developer.nvidia.com/cuda-downloads 2.双击下载好的deb进行安装 3.sudo apt-get install cuda 4.As par ...