mirror of
				https://github.com/flynx/ImageGrid.git
				synced 2025-10-30 19:00:09 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| 
 | |
| Modules and RequireJS
 | |
| =====================
 | |
| 
 | |
| Most of the system is loaded via browser context RequireJS loader, in 
 | |
| node/electron/nw context node-specific stuff is loaded with a second 
 | |
| node-enabled RequireJS instance or node require.
 | |
| 
 | |
| The ideal solution would be to use one require that sees both the browser
 | |
| and node contexts, the problem is exactly in this, the browser requirejs
 | |
| does not see either node or node modules while the node require loads code
 | |
| that is not visible to devtools unless it is running at that exact moment.
 | |
| 
 | |
| Thus we are forced to use both mode requirejs loaders which may be 
 | |
| confusing at times.
 | |
| 
 | |
| 
 | |
| Different loaders
 | |
| -----------------
 | |
| 
 | |
| There are two RequireJS instances present in most contexts in nw.js 
 | |
| within the define(..) runner:
 | |
| 	- require(..)		
 | |
| 		Pure browser RequireJS instance, used to load local 
 | |
| 		modules.
 | |
| 
 | |
| 	- requirejs(..)		
 | |
| 		Node-enabled RequireJS instance, used to load node 
 | |
| 		modules.
 | |
| 		This is needed as the above require(..) overloads the 
 | |
| 		node native loader.
 | |
| 
 | |
| The future
 | |
| ----------
 | |
| 
 | |
| This seems a bit confusing, so at least the naming convention should be
 | |
| revised.
 | |
| 
 | |
| 
 |