Skip to content

Unable to specify file path when using a plugin in data-main attribute #1472

@christowiz

Description

@christowiz

Wondering if there is a specific reason file paths are not supported when using a plugin in the data-main attribute. I created a plugin that bootstraps the application by loading the config object then calling a mediator.

I am initializing the app here passing the mediator name home

<script src="vendor/require.js" data-main="plugins/config!home"></script>

And here is the plugin.

define({
    load: function( name, req, onload, config )  {

        req( [ 'require-config.js' ], function( value ) {

            onload( value );

            require.config( value );

            req( [ 'mediators/' + name ] );

        });
    }
});

This works but it would be simpler to be able to pass the home mediator path (mediators/home) to the plugin so it doesn't have to be hardcoded into the file in case we need to load something outside of the mediators directory.

<script src="vendor/require.js" data-main="plugins/config!mediators/home"></script>

But this throws an error because the data-main attribute is parsing the path after the plugin (!).

I know I can split it into two <script> tags to load the config and then load the mediator but I'd rather have a bootstrap file that can take care of the config object outside of the HTML structure and keep the single entry point.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions