Home > Web Front-end > JS Tutorial > body text

How to use RequireJS to optimize JavaScript reference code_Basic knowledge

WBOY
Release: 2016-05-16 15:52:03
Original
942 people have browsed it

RequireJS is an effective way to improve the speed and quality of your javascript code, while also making your code easier to read and maintain.

In this article, I will introduce you to RequireJS and how you should use it. We discuss importing files and defining modules, and even touch on optimization aspects.

Simply put, require.js is a script loader that allows you to separate your JavaScript code into files and modules, while managing the dependencies between each module.

Import files

Before starting to use RequireJS, we need to download its library and Asynchronous Module Definition (AMD) file. Then link to the require.js file at the head of the document, like:

 
<script src="require.js" data-main="main"></script>
Copy after login

You may ask what the data-main attribute is. Using RequireJS means that when you call require at the head of the document, you will also link to the main file of your javascript application, which is main in this example. .js (please note that RequireJS automatically adds the .js suffix to the end of the file name)

In the main.js file, you need to configure RequireJS, load the module and define a base path for use when importing files.

Require function

RequireJS uses a simple require function to import scripts. In this example, RequireJS imports JQuery:

require(["jquery"], function($) {
 $(‘#mydiv”).html(‘Hello this is RequireJS talking”);
});
Copy after login

One of the advantages of RequireJS is that it is very easy to read. In the above code, we can see that the require function first grabs the file named jquery.js, and then passes $ as a parameter to an anonymous function. When this action is completed, you can use JQuery code at will. .

Now, your code generally does not include the jQuery library of jquery.js file. Like most plug-ins and frameworks, we usually choose to import it from their GitHub or Google CDN, so we need to configure them The real path:

require.config({
 paths: {
  "jquery": "https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"
 }
});
Copy after login

This means you can import jquery via Google (please note that I used the "jquery" name in this example, you can use any name you like)

Define module

Using AMD mode means that our code can be structured into modules; these modules implement certain functions in the application. You can put just two lines of code in a module or 100 lines of code, it all depends on what you want to achieve through the module.

To define a module, we can write:

define(function () {
 function add (x,y) {
  return x + y;
 }
});
Copy after login

In this, I defined an add function without any dependencies, but if this function requires jquery to work properly, the definition code may be like this:

define([‘jquery'], function () {
 function place(mydiv) {
$(mydiv).html(‘My Sample Text');
 }
});
Copy after login

Using this syntax, we tell JavaScript to first import jquery and then run the code, so that jquery can be used at any time. We can also use modules defined in Javascript files, not just frameworks or plugins.

Optimization

As you can see, RequireJS is a powerful tool for organizing your files into modules and importing them only when you need them. The disadvantage is that a large number of JavaScript files also require a lot of import time, so RequireJS includes an optimizer to collect the data of all files and put it into a compressed file.

Overall, RequireJS is a great tool to organize and optimize Javascript in your web application.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!