psychopy.org | Reference | Downloads | Github

Question about projectNameNoModule.js

I’m hoping a developer could shed some light on when projectNameNoModule.js is used (rather than projectName.js). Whenever I run my experiment online, it always loads projectName.js, rather than the no module version. Because of this, I’ve gotten used to only editing the projectName.js code when adding/moving custom javascript and ignoring the no module file. Are there circumstances when a user will load the no module version instead? Should I ensure both files are updated if I edit the javascript after exporting from PsychoPy?

I’ve had issues with users reporting my online experiment not loading for them (although it appears to work properly for most), and I’m wondering if this is the cause.

Thanks!

The NoModule version will run on old browsers that don’t support recent versions of javascript. You can find out what browsers support this (and most other JS options) here:
https://caniuse.com/#search=modules
If you click on the button “Usage relative” you’ll see that the occurrence of these browsers globally is relatively small but you might have demographics using them more.

Then the question is what to do about it? We’ve provided the no-modules option as a way to try and provide those participants with as similar an experience as possible, but you might take the strategy of asking them to upgrade their browser first?

Thanks for the info. So if they’re forced to use the NoModule.js version of the experiment (due to an old/unsupported browser), other parts of the javascript may not work exactly as planned. I just tested out a very basic experiment with Internet Explorer and it fails immediately!

Sounds like asking them to update their browser and to avoid using Internet Explorer is the way to go.