Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

what is 'require' function is ReactJS?

Take the below sample code for example.

require('react-bootstrap-datetimepicker');

...

render: function() {
  return <DateTimeField />;
}

The datatimepicker is a third party library that can be used in my own code, but if I add the piece of code in the js, the firebug will tell me that the require can not be found. If I should translate the piece of code or do something? Thanks very much

like image 628
liam xu Avatar asked Sep 17 '15 06:09

liam xu


People also ask

What is require () in JavaScript?

require() statement basically reads a JavaScript file, executes it, and then proceeds to return the export object. require() statement not only allows to add built-in core NodeJS modules but also community-based and local modules.

Can I use require in ReactJS?

require is not a React api, nor is it a native browser api (for now). require comes from commonjs and is most famously implemented in node. js, if you have used node. js, you will see requires everywhere.

Why we require React?

Its aim is to allow developers to easily create fast user interfaces for websites and applications alike. The main concept of React. js is virtual DOM. It is a tree based on JavaScript components created with React that mimics a DOM tree.

What is require return node JS?

Node. js follows the CommonJS module system, and the built-in require function is the easiest way to include modules that exist in separate files. The basic functionality of require is that it reads a JavaScript file, executes the file, and then proceeds to return the exports object.


1 Answers

The require function is intended to add separate pieces of code (“modules”) to the current scope, a feature that was not part of the JavaScript/ECMAScript language until the ES2015 specification.

Therefore this function is not specific to ReactJS, and is not part of the language either, which is why Firefox throws an error when you attempt to use it in a vanilla browser environment.

Using require to load modules synchronously is generally part of a method known as CommonJS (see this answer for more on module formats). While an environment such as Node.js provides a module API similar to this specification, browsers do not; so you must bring the function yourself.

There are many options to do so, and it is up to you to pick the one that best suits your workflow and personal taste. But overall, the patterns come down to either:

  • Explicitly use a module loader in the browser: using a <script> tag, bring a loader such as SystemJS and immediately use it to load your own code.
  • Bundle your code to a single script: using a bundler such as Browserify, Webpack, or JSPM, and load the results using a single <script> tag. The bundler brings along its own module loader.

Generally, the second option is more targeted at production environments, while the first option is more practical in development environments.

like image 106
Eric Redon Avatar answered Oct 15 '22 01:10

Eric Redon