Namespace a dynamically loaded javascript file's contents

后端 未结 2 1455
时光取名叫无心
时光取名叫无心 2021-02-08 13:22

Is it possible to namespace a JavaScript file inserted dynamically?

I know that I can dynamically include a JavaScript file by creating a script tag and in

2条回答
  •  遇见更好的自我
    2021-02-08 13:55

    Yes, CommonJS Modules/1.1 specifies only one way of doing it.

    I've used it only with Node.js on server side, but I believe there are other libraries created to work with browser that are CommonJS compliant. Beware that there are multiple module specifications for server/browser (didn't dig into that yet).

    Modules are written just like any other piece of javascript, the only addition is you export what you want to expose:

    module.exports.bar = Bar;
    
    function Bar() {
     // code
    }
    

    And the usage:

    var foo = require('mymodule');
    
    foo.bar();
    

    What is actually done in the background, the whole code is wrapped into another function and exports are its properties.

    Also, Michael Bolin talked about similar problem in his talk about 'with' keyword at JSConf.

提交回复
热议问题