dynamic synchronous import

Bradley Meck bradley.meck at gmail.com
Fri Sep 26 12:46:26 PDT 2014


> ```js
> var moduleName = 'foo';
> var foo = require(moduleName);
> ```
>
> would not work in browserify either

It does work in browserify, but you need to be sure to include it in a list
of requires if it is not imported by the current list of files statically
(ala `browserify -e main.js -r foo`).

On Fri, Sep 26, 2014 at 12:21 PM, Calvin Metcalf <calvin.metcalf at gmail.com>
wrote:

>
> ```js
> var moduleName = 'foo';
> var foo = require(moduleName);
> ```
>
> would not work in browserify either
>
> On Fri, Sep 26, 2014 at 12:40 PM, Konstantin Ikonnikov <
> ikokostya at gmail.com> wrote:
>
>> I don't want load module using http request. In my case module already
>> defined and I want import it later when I get its name:
>>
>> ```js
>> var moduleName = getModuleName();
>> import { foo } from moduleName;
>>
>> // use foo
>> ```
>>
>>
>>
>> 2014-09-26 20:00 GMT+04:00 Marius Gundersen <gundersen at gmail.com>:
>>
>>> And the reason you cannot import a module synchronously is that it would
>>> freeze the entire browser until the http request completes, which could be
>>> several seconds on a slow internet connection.
>>>
>>> If you want to import something dynamically you can do it using the API
>>> (to be finalized, I believe):
>>>
>>> ```js
>>> var moduleName = 'foo';
>>> Loader.import(moduleName).then(function(foo){
>>>   //use foo here
>>> });
>>> ```
>>>
>>> Marius Gundersen
>>>
>>> On Fri, Sep 26, 2014 at 5:29 PM, John Barton <johnjbarton at google.com>
>>> wrote:
>>>
>>>> no.
>>>>
>>>> On Fri, Sep 26, 2014 at 8:12 AM, Konstantin Ikonnikov <
>>>> ikokostya at gmail.com> wrote:
>>>>
>>>>> Can I import module dynamically, but synchronously? Example for
>>>>> common js
>>>>>
>>>>> ```js
>>>>> var moduleName = 'foo';
>>>>> var foo = require(moduleName);
>>>>> ```
>>>>>
>>>>> In es6 draft I found that ModuleSpecifier must be a StringLiteral
>>>>> http://people.mozilla.org/~jorendorff/es6-draft.html#sec-imports
>>>>>
>>>>> _______________________________________________
>>>>> es-discuss mailing list
>>>>> es-discuss at mozilla.org
>>>>> https://mail.mozilla.org/listinfo/es-discuss
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> es-discuss mailing list
>>>> es-discuss at mozilla.org
>>>> https://mail.mozilla.org/listinfo/es-discuss
>>>>
>>>>
>>>
>>
>> _______________________________________________
>> es-discuss mailing list
>> es-discuss at mozilla.org
>> https://mail.mozilla.org/listinfo/es-discuss
>>
>>
>
>
> --
> -Calvin W. Metcalf
>
> _______________________________________________
> es-discuss mailing list
> es-discuss at mozilla.org
> https://mail.mozilla.org/listinfo/es-discuss
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20140926/1b1b1502/attachment.html>


More information about the es-discuss mailing list