javascript模块化加载sea.js

举报
黄啊码 发表于 2022/06/28 23:59:23 2022/06/28
【摘要】 简单总结sea.js 学习 文件目录结构   /sea/sea.js      下载地址  http://seajs.org/docs/#downloads   /sea/jQuery-sea.js   下载地址 http://jquery.com/...

简单总结sea.js 学习

文件目录结构

  /sea/sea.js      下载地址  http://seajs.org/docs/#downloads

  /sea/jQuery-sea.js   下载地址 http://jquery.com/download/

  /sea/sea_config.js

  /sea/home.jsdata.js

  /sea/data.js


1.html页面代码文件

  1. <style>  
  2.  .ch{height:200px;width:200px;background:#ccc;}  
  3. </style>  
  4. <div class="cl"></div>  
  5.   
  6. <!-- 引入sea.js文件 -->  
  7. <script src="/sea/sea.js"></script>  
  8.   
  9. <!-- 引入sea_config.js配置文件 -->  
  10. <script src="/sea/sea_config.js"></script>     
  11.   
  12. <script type="text/javascript">  
  13.  seajs.use(['jquery','home'],function(a,b){    //  
  14.     alert(b.foo);  //调用home中的foo属性  
  15.     b.init();      //调用home中的init接口  
  16.     b.all();       //调用home中的all接口  
  17.  })  
  18.  </script>  

2.sea_config.js配置文件

[javascript] view plain copy
  1. seajs.config({  
  2.   
  3.   // 别名配置  
  4.   alias: {  
  5.     'jquery''/sea/jquery-sea',  
  6.     'home''/sea/home',  
  7.     'data''/sea/data'  
  8.   },  
  9.   
  10.   // 路径配置  
  11.   //paths: {  
  12.   //  'gallery': 'https://a.alipayobjects.com/gallery'  
  13.   //},  
  14.   
  15.   // 变量配置  
  16.   //vars: {  
  17.   //  'locale': 'zh-cn'  
  18.   //},  
  19.   
  20.   // 映射配置  
  21.   //map: [  
  22.   //  ['http://example.com/js/app/', 'http://localhost/js/app/']  
  23.   //],  
  24.   
  25.   // 预加载项  
  26.  //preload: ['jquery','home'],  
  27.   
  28.   // 调试模式  
  29.   debug: true,  
  30.   
  31.   // Sea.js 的基础路径  
  32.   //base: 'http://example.com/path/to/base/',  
  33.   
  34.   // 文件编码  
  35.   charset: 'utf-8'  
  36. });  

[javascript] view plain copy
  1. define(function(require, exports, module){  
  2.  var data = require('data');  // 加载data模块 data.js  
  3.  function wo(){       //内部函数,init中调用  
  4.    alert("load $");  
  5.  };    
  6.  alert(data.blog);   //直接执行函数  
  7.  module.exports = {             //当前模块对外提供的接口  
  8.         foo:'hello',  //属性    
  9.         init : function(){      //接口init  
  10.             wo();    //执行内部函数  
  11.             $(".cl").addClass("ch");  
  12.         },  
  13.         all : function(){       //接口all  
  14.           alert(data.author);  
  15.         }         
  16.     };  
  17. console.log(require.resolve('jquery'));  //require.resolve返回别名文件 解析后的绝对路径  
  18.   
  19. });  

[javascript] view plain copy
  1. define({  
  2.     author: 'cm',  
  3.     blog: 'http://www.XXX.cn'  
  4. });  

文章来源: markwcm.blog.csdn.net,作者:黄啊码,版权归原作者所有,如需转载,请联系作者。

原文链接:markwcm.blog.csdn.net/article/details/72867423

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。