Merge branch 'master' of github.com:hakimel/reveal.js into dev
This commit is contained in:
		
						commit
						c636b88b2d
					
				
					 1 changed files with 6 additions and 5 deletions
				
			
		
							
								
								
									
										11
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										11
									
								
								README.md
									
										
									
									
									
								
							| 
						 | 
					@ -1235,19 +1235,20 @@ Then:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Plugins
 | 
					## 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
 | 
					```javascript
 | 
				
			||||||
Reveal.registerPlugin( 'myPlugin', {
 | 
					let MyPlugin = {
 | 
				
			||||||
	init: () =>  new Promise( resolve => setTimeout( resolve, 3000 ) )
 | 
						init: () =>  new Promise( resolve => setTimeout( resolve, 3000 ) )
 | 
				
			||||||
} );
 | 
					};
 | 
				
			||||||
 | 
					Reveal.registerPlugin( 'myPlugin', MyPlugin );
 | 
				
			||||||
Reveal.addEventListener( 'ready', () => console.log( 'Three seconds later...' ) );
 | 
					Reveal.addEventListener( 'ready', () => console.log( 'Three seconds later...' ) );
 | 
				
			||||||
Reveal.initialize();
 | 
					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
 | 
					### Retrieving Plugins
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue