Включить вторичные источники в GJS

Я разрабатываю расширение Gnome. Таким образом, у меня есть extension.js, где находится весь мой код. Теперь у меня есть другой код, который я хочу использовать, он находится в файле foo.js и, к сожалению, еще не использует строгий режим. Как я могу загрузить это foo.js?


person abergmeier    schedule 17.09.2020    source источник


Ответы (1)


Это описано в существующем руководстве:

// 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);
person andy.holmes    schedule 17.09.2020