Merge branch 'master' of github.com:hakimel/reveal.js into dev
						commit
						c636b88b2d
					
				
							
								
								
									
										11
									
								
								README.md
								
								
								
								
							
							
						
						
									
										11
									
								
								README.md
								
								
								
								
							|  | @ -1235,19 +1235,20 @@ Then: | |||
| 
 | ||||
| ## Plugins | ||||
| 
 | ||||
| Plugins should be registered with reveal.js by calling `Reveal.registerPlugin( 'myPluginID', MyPlugin )`. Registered plugin instances should expose an "init" function that reveal.js can call to initialize them. | ||||
| Plugins should register themselves with reveal.js by calling `Reveal.registerPlugin( 'myPluginID', MyPlugin )`. Registered plugin instances can optionally expose an "init" function that reveal.js will call to initialize them. | ||||
| 
 | ||||
| When reveal.js is booted up via `Reveal.initialize()`, it will go through all registered plugins and invoke their "init" methods. If the "init" method returns a Promise, reveal.js will wait for that promise to be fullfilled before finshing the startup sequence and firing the [ready](#ready-event) event. Here's an example of a plugin that returns a promise: | ||||
| When reveal.js is booted up via `Reveal.initialize()`, it will go through all registered plugins and invoke their "init" methods. If the "init" method returns a Promise, reveal.js will wait for that promise to be fullfilled before finshing the startup sequence and firing the [ready](#ready-event) event. Here's an example of a plugin that does some asynchronous work before reveal.js can proceed: | ||||
| 
 | ||||
| ```javascript | ||||
| Reveal.registerPlugin( 'myPlugin', { | ||||
| let MyPlugin = { | ||||
| 	init: () =>  new Promise( resolve => setTimeout( resolve, 3000 ) ) | ||||
| } ); | ||||
| }; | ||||
| Reveal.registerPlugin( 'myPlugin', MyPlugin ); | ||||
| Reveal.addEventListener( 'ready', () => console.log( 'Three seconds later...' ) ); | ||||
| Reveal.initialize(); | ||||
| ``` | ||||
| 
 | ||||
| If the init method does _not_ return a Promise, it is considered ready right away and will not hold up the reveal.js startup sequence. | ||||
| If the init method does _not_ return a Promise, the plugin is considered ready right away and will not hold up the reveal.js startup sequence. | ||||
| 
 | ||||
| ### Retrieving Plugins | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Hakim El Hattab
						Hakim El Hattab