首页 > 其他分享 >RequireJS 基本语法

RequireJS 基本语法

时间:2024-08-30 10:48:37浏览次数:4  
标签:基本 function show module js 语法 导入 calc RequireJS

0x01 概述

  • RequireJS 官网:https://requirejs.org/
  • RequreJS 是一个 JavaScript 文件和模块加载器
  • 特点:遵循 AMD 规范、模块化开发
  • 特殊要求:
    • 每个 HTML 文件与其 JavaScript 入口文件一一对应,且多个 JavaScript 入口文件名称不能重复
      • 多个 HTML 不能使用同一个 JavaScript 入口文件
    • 所有需要导入的 JavaScript 文件都要在 JavaScript 入口文件中导入

0x02 基本语法

(0)导入 RequireJS

在 HTML 文件中使用以下语句导入 RequireJS:

  <script src="https://requirejs.org/docs/release/2.3.7/minified/require.js" async="true" defer data-main="js/main"></script>
  • async="true" defer:异步加载需要引入的 JS 文件

  • data-main="js/main":设置入口文件

    上述入口文件路径为 ./js/main.js

(1)导入其他自定义 JS 文件

  1. 在 js 目录创建 module 目录,其中创建 calc.js

    define(function () {
      function addHandler(a, b) {
        return a + b;
      }
    
      return {
        add: addHandler,
      };
    });
    
    • define:AMD 规范,定义模块
    • return:以对象的方式导出
  2. 在 main.js 中引入 calc.js

    require(["module/calc"], function (calc) {
      var result = calc.add(1, 2);
      console.log(result);
    });
    
    • require(modulePathArray, callback):AMD 规范,导入模块
      • modulePathArray:以数组的形式,通过路径导入模块
      • callback:使用模块提供的方法,参数为模块的实例对象
  3. 此时控制台输出 3

(2)配置路径

  • 通过配置路径,可以简化导入模块时重复写入的路径

  • 修改 main.js

    require.config({
      paths: {
        calc: "module/calc",
      },
    });
    
    require(["calc"], function (calc) {
      var result = calc.add(1, 2);
      console.log(result);
    });
    

(3)多模块

  1. 在 module 中新建 show.js

    define(function () {
      function clog(msg) {
        console.log(msg);
      }
    
      return {
        show: clog,
      };
    });
    
  2. 在 main.js 中同时导入 calc.js 和 show.js

    require.config({
      paths: {
        calc: "module/calc",
        show: "module/show",
      },
    });
    
    require(["calc", "show"], function (calc, show) {
      var result = calc.add(1, 2);
      show.clog(result);
    });
    
  3. 此时控制台输出 3

(4)模块中导入其他模块

  1. 修改 calc.js,在 calc.js 中导入 show.js

    define(["show"], function (show) {
      function addHandler(a, b) {
        show.clog(a + b);
      }
    
      return {
        add: addHandler,
      };
    });
    

    当在 main.js 中配置了路径,才可以在模块中也使用简写 "show",否则需要使用完整路径 "module/show"

  2. 修改 main.js

    require.config({
      paths: {
        calc: "module/calc",
        show: "module/show",
      },
    });
    
    require(["calc", "show"], function (calc, show) {
      calc.add(1, 2);
    });
    
  3. 此时控制台输出 3

-End-

标签:基本,function,show,module,js,语法,导入,calc,RequireJS
From: https://www.cnblogs.com/SRIGT/p/18388212

相关文章

  • Linux中cd命令的基本用法!
    cd命令是Linux中最常见的命令之一,全拼changedirectory,其命令主要用于切换当前工作目录,本篇文章为大家介绍一下Linux中cd命令的常见用法,一起来看看吧。常见的cd命令用法:1、进入当前工作目录下的目录:cd./2、进入其他目录:cd/home/user/documents/3、......
  • Makefile 基础与常用语法详解
    目录 一、引言二、Makefile基础概念1.目标、依赖和命令2.文件名和搜索路径3.执行顺序和依赖关系三、Makefile常用语法1.变量和宏定义2.自动变量3.模式规则 4.条件判断5.循环6.伪目标 四、Makefile实际应用示例五、总结 一、引言        在......
  • VTK随笔九:VTK图形处理(vtkPolyData数据生成与显示、基本的图形操作、网络平滑)
            图形数据的应用非常广泛,最贴近日常生活的应该是3D游戏,其中每个角色的模型场景等都是图形数据。当然,游戏仅仅是图形数据的一个应用点,图形在CAD(计算机辅助设计)、影视、医学、地质、气象数据建模等领域中均有着广泛的应用。vtkPolyData是VTK中常用的数据结构......
  • 基于javaweb的城乡居民基本医疗信息管理系统设计与开发论文
    摘  要信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理......
  • (算法)基本计算器II————<栈—模拟>
    1.题⽬链接:227.基本计算器II2.题⽬描述:题⽬解析:⼀定要认真看题⽬的提⽰,从提⽰中我们可以看到这道题:•只有「加减乘除」四个运算;•没有括号;•并且每⼀个数都是⼤于等于0的;这样可以⼤⼤的「减少」我们需要处理的情况。 3.解法(栈):算法思路:由于表达式⾥⾯没......
  • Stable Diffusion学习-提示词基本语法
    提示词正面提示词AChinesemanwearingagreencottoncoatandredhairisinthecorridoroftheForbiddenCity,sunnyat8:00amduringtheday,一名身穿绿色棉布外套、红发的中国男子在紫禁城的走廊上,白天阳光明媚,(masterpiece:1,2),bestquality,highres,......
  • 沉浸式学习ACL基本原理与配置(上)
    随着网络技术的飞速发展,网络安全问题日益突出。ACL(AccessControlList,访问控制列表)可以通过对网络中报文流的精确识别,与其他技术结合,达到控制网络访问行为、防止网络攻击和提高网络带宽利用率的目的,从而切实保障网络环境的安全性和网络服务质量的可靠性。ACL使用包过滤技术,在......
  • Day50.body内基本标签
    1.body内基本标签_h1~h6标题标签1~6级标签2.body内基本标签_b标签加粗,i标签斜体,u标签下划线,s标签删除线3.body内基本标签_p标签段落、br标签换行、hr标签水平分割4.body内基本标签_总结......
  • T240829 【用Liouville定理证明代数学基本定理】
    [T240829]代数学基本定理:在复平面上次数大于\(1\)的一元多项式至少有一个零点.引理(Liouville)有界整函数\(f(z)\)必为常数.证:设\(|f(z)|\)有上界\(M\).即\(\forallz\in\C,~|f(z)|\leM\).于是由Cauchy不等式,对\(\foralla\in\C\),有\[0\le|f'(a)|\le......
  • 图像字幕Image Captioning——使用语法和语义正确的语言描述图像
    1.什么是图像字幕        ImageCaptioning(图像字幕生成) 是计算机视觉和自然语言处理(NLP)领域的一个交叉研究任务,其目标是自动生成能够描述给定图像内容的自然语言句子。这项任务要求系统不仅要理解图像中的视觉内容,还要能够将这些视觉信息转化为具有连贯性和语义丰......