Podczas eksportowania nowego obiektu za pomocą require.js: czy faktycznie tworzy on „nowy” obiekt lub po prostu zwraca instancję istniejącego

Załóżmy, że mam moduły A, B i C w require.js. Moduł Eksportuj nowy obiekt.

define(function() {

    // constructor
    function F() {
        this.prop = 'some';
    }

    // module exports
    return new F();   

});

Moduły B i C importują instancję F () z A:

define(['A'], function(f_inst) {
    // code
});

Z jakiegoś powodu potrzebuję F, aby być singletonem. Nie rozumiem poważnie, jak działa require.js. To jest moje pytanie: czy w tym przypadku muszę użyć wzorów singleton dla F ()?

questionAnswers(1)

yourAnswerToTheQuestion