Reputation: 14071
I am developing a Gnome extension. As such, I have an extension.js
where all my code resides.
Now I have some other code I want to use, which lives in a file foo.js
and sadly does not yet use strict mode. How can I load this foo.js
?
Upvotes: 1
Views: 177
Reputation: 3696
This is covered in the existing tutorial:
// GJS's Built-in Modules are in the top-level
// See: https://gitlab.gnome.org/GNOME/gjs/blob/master/doc/Modules.md
const Gettext = imports.gettext;
const Cairo = imports.cairo;
// GNOME APIs are under the `gi` namespace (except Cairo)
// See: https://gjs-docs.gnome.org/
const GLib = imports.gi.GLib;
const Gtk = imports.gi.Gtk;
// GNOME Shell imports
const Main = imports.ui.main;
const ExtensionUtils = imports.misc.extensionUtils;
// You can import your modules using the extension object.
// For example, if you had a file named `exampleLib.js` in your extension directory
const Me = ExtensionUtils.getCurrentExtension();
const ExampleLib = Me.imports.exampleLib;
let myObject = new ExampleLib.ExportedClass();
ExampleLib.exportedFunction(0, ExampleLib.EXPORTED_VARIABLE);
Upvotes: 3