Skip to main content

Three external exposure methods and introduction methods of export in ES6

 In the JS era a few years ago, there was no concept of modularity. However, as front-end projects become larger and more complex, it is urgent to introduce the concept of modularity. Before ES6, the community developed some modular solutions, such as: CommonJS and AMD and CMD. These are slowly being replaced by import and export after ES6. Export is used to specify the interface that the module opens to the outside world. Regardless of whether you define it or not, the module exported by export is in strict mode and cannot be used in embedded scripts. The import command is used to import functionality provided by other modules.

Three ways of exporting external exposure

  • expose modules separately

export const name="aaa";
export function say(){
    console.log("hello");
}

  • Unified exposure module

const name="aaa";
function say(){
    console.log("hello");
}
export {name,say}

  • Exposed modules by default
export default{
    name:"aaa",
    say:function(){
        console.log("hello-name");
    }
}

module import method

  • direct import

import * as m1 from "./helloone.js
m1.say();
  • destructuring assignment

      import {say,name} from "./hello2.js";
      console.log(name)
  • exposed by default

    //import m from "./hello3.js";//Shorthand, suitable for default module exposure
      import {default as m} from "./hello3.js";
      console.log(m.name)
      m.say()
  • total import

   <script src="./main.js" type="module"></script>


Comments

Popular posts from this blog

What is the difference between width property 100% and auto in css?

 width:auto: The default width value of block-level elements. When set to this value, the browser will automatically select an appropriate width value to adapt to the width of the parent element. When the width is set to 100%, the width of the child element box The value is equal to the parent's content, and as the parent's content automatically changes, after adding the padding and margin of the child element, its width remains unchanged, which is the difference from setting it to auto. But we most often use width:auto, because it is more flexible, width:100% is used less, because when adding padding or margin, this method is easy to make it exceed the parent box and destroy the original layout.

Access to XMLHttpRequest at 'http://localhost:8080/xxx' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.

 Due to browser same-origin policy restrictions. The Same Origin Policy is a convention. This is the main and essential security feature of the browser. Without the same-origin policy, normal browser functionality may be affected. The web is built on the same-origin policy, and browsers are just one implementation of the same-origin policy. The Same Origin Policy prevents JavaScript scripts from one domain from interacting with content from another domain. The so-called same origin (that is, the same domain) means that two pages have the same protocol, host and port.