Re: Multiple source files



Thanks for that, that's the sort of thing I was looking for.

On Fri, 9 Nov 2018 at 17:37, Philip Chimento via _javascript_-list <_javascript_-list gnome org> wrote:
For completeness I should mention that there's of course a built-in way to have multiple source files. To import "foo.js", use "const Foo = imports.foo;", and to import "subdir/bar.js" use "const Bar = imports.subdir.bar;"

To set the search path for modules, use "imports.searchPath" which is an array so you can push() or unshift() extra entries onto it.

The "imports.package" module simplifies the process of setting up the search path a bit. Unfortunately it's not well documented but you can take a look at how other apps, e.g. gnome-sound-recorder, use it:
https://gitlab.gnome.org/GNOME/gnome-sound-recorder/blob/master/src/org.gnome.SoundRecorder.in
https://gitlab.gnome.org/GNOME/gnome-sound-recorder/blob/master/src/main.js

Support for ES6 modules and the "import" keyword is in progress, follow along here: https://gitlab.gnome.org/GNOME/gjs/merge_requests/150

Best regards,
Philip

On Fri, Nov 9, 2018, 11:45 , <makepost firemail cc> wrote:
See also https://github.com/makepost/gunit for a test runner, and
https://github.com/sammydre/ts-for-gjs for autocomplete and type
checking. I actually think it's good not to replicate core Node modules
because we have GLib and other introspected GNOME libs with
language-independent APIs.

On 2018-11-09 18:22, Andrea Giammarchi via _javascript_-list wrote:
> if you are familiar with CommonJS, I suggest you to use cgjs
>
> https://github.com/cgjs/cgjs#cgjs--
>
> it's not really a 1:1 nodejs replica when it comes to core modules,
> but at least it doesn't require you to learn a module system that only
> GJS uses and that will inevitably fade away as soon as ES2015 static,
> or even dynamic import, will be introduced.
>
> Feel free to see the circus around configuring folders and imports
> otherwise directly via GJS.
>
> On Fri, Nov 9, 2018 at 5:18 PM Tony Houghton <h realh co uk> wrote:
>
>> gjs has attracted my attention, but the tutorials and examples are
>> rather simple so I can't work out what you're supposed to do to make
>> an application with multiple source files. Do you have to write a
>> script to concatenate them in the right order, or
>> can you use _javascript_'s import keyword?
>>
>> --
>>
>> TH
_______________________________________________
_javascript_-list mailing list
_javascript_-list gnome org
https://mail.gnome.org/mailman/listinfo/_javascript_-list


--
TH



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]