| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ## Installation
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-09 18:07:57 +00:00
										 |  |  | In the browser, just add a script tag: | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-09 18:07:57 +00:00
										 |  |  | ```html | 
					
						
							|  |  |  | <script lang="javascript" src="dist/xlsx.full.min.js"></script> | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | <details> | 
					
						
							|  |  |  |   <summary><b>CDN Availability</b> (click to show)</summary> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | |    CDN     | URL                                      | | 
					
						
							|  |  |  | |-----------:|:-----------------------------------------| | 
					
						
							|  |  |  | |    `unpkg` | <https://unpkg.com/xlsx/>                | | 
					
						
							|  |  |  | | `jsDelivr` | <https://jsdelivr.com/package/npm/xlsx>  | | 
					
						
							|  |  |  | |    `CDNjs` | <http://cdnjs.com/libraries/xlsx>        | | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `unpkg` makes the latest version available at: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```html | 
					
						
							|  |  |  | <script src="https://unpkg.com/xlsx/dist/xlsx.full.min.js"></script> | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | </details> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-09 18:07:57 +00:00
										 |  |  | With [npm](https://www.npmjs.org/package/xlsx): | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-09 18:07:57 +00:00
										 |  |  | ```bash | 
					
						
							|  |  |  | $ npm install xlsx | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | With [bower](http://bower.io/search/?q=js-xlsx): | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```bash | 
					
						
							|  |  |  | $ bower install js-xlsx | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ### JS Ecosystem Demos
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | The [`demos` directory](demos/) includes sample projects for: | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-12 20:02:06 +00:00
										 |  |  | **Frameworks and APIs** | 
					
						
							| 
									
										
										
										
											2017-06-24 06:51:37 +00:00
										 |  |  | - [`angular 1.x`](demos/angular/) | 
					
						
							|  |  |  | - [`angular 2.x / 4.x`](demos/angular2/) | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | - [`meteor`](demos/meteor/) | 
					
						
							| 
									
										
										
										
											2017-09-12 20:02:06 +00:00
										 |  |  | - [`react and react-native`](demos/react/) | 
					
						
							|  |  |  | - [`vue 2.x and weex`](demos/vue/) | 
					
						
							| 
									
										
										
										
											2017-09-05 05:26:50 +00:00
										 |  |  | - [`XMLHttpRequest and fetch`](demos/xhr/) | 
					
						
							| 
									
										
										
										
											2017-09-12 20:02:06 +00:00
										 |  |  | - [`nodejs server`](demos/server/) | 
					
						
							| 
									
										
										
										
											2017-08-10 23:46:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-12 20:02:06 +00:00
										 |  |  | **Bundlers and Tooling** | 
					
						
							| 
									
										
										
										
											2017-08-10 23:46:34 +00:00
										 |  |  | - [`browserify`](demos/browserify/) | 
					
						
							| 
									
										
										
										
											2017-03-23 17:11:31 +00:00
										 |  |  | - [`requirejs`](demos/requirejs/) | 
					
						
							| 
									
										
										
										
											2017-06-08 06:19:11 +00:00
										 |  |  | - [`rollup`](demos/rollup/) | 
					
						
							| 
									
										
										
										
											2017-03-23 17:11:31 +00:00
										 |  |  | - [`systemjs`](demos/systemjs/) | 
					
						
							| 
									
										
										
										
											2017-09-05 05:26:50 +00:00
										 |  |  | - [`webpack 2.x`](demos/webpack/) | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-12 20:02:06 +00:00
										 |  |  | **Platforms and Integrations** | 
					
						
							|  |  |  | - [`electron application`](demos/electron/) | 
					
						
							|  |  |  | - [`nw.js application`](demos/nwjs/) | 
					
						
							| 
									
										
										
										
											2017-08-10 23:46:34 +00:00
										 |  |  | - [`Adobe ExtendScript`](demos/extendscript/) | 
					
						
							| 
									
										
										
										
											2017-08-19 23:06:34 +00:00
										 |  |  | - [`Headless Browsers`](demos/headless/) | 
					
						
							| 
									
										
										
										
											2017-08-10 23:46:34 +00:00
										 |  |  | - [`canvas-datagrid`](demos/datagrid/) | 
					
						
							| 
									
										
										
										
											2017-09-05 05:26:50 +00:00
										 |  |  | - [`Swift JSC and other engines`](demos/altjs/) | 
					
						
							| 
									
										
										
										
											2017-08-10 23:46:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ### Optional Modules
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | <details> | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  |   <summary><b>Optional features</b> (click to show)</summary> | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | The node version automatically requires modules for additional features.  Some | 
					
						
							|  |  |  | of these modules are rather large in size and are only needed in special | 
					
						
							|  |  |  | circumstances, so they do not ship with the core.  For browser use, they must | 
					
						
							|  |  |  | be included directly: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```html | 
					
						
							|  |  |  | <!-- international support from js-codepage --> | 
					
						
							|  |  |  | <script src="dist/cpexcel.js"></script> | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | An appropriate version for each dependency is included in the dist/ directory. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The complete single-file version is generated at `dist/xlsx.full.min.js` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | Webpack and Browserify builds include optional modules by default.  Webpack can | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | be configured to remove support with `resolve.alias`: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ```js | 
					
						
							|  |  |  |   /* uncomment the lines below to remove support */ | 
					
						
							|  |  |  |   resolve: { | 
					
						
							|  |  |  |     alias: { "./dist/cpexcel.js": "" } // <-- omit international support | 
					
						
							|  |  |  |   } | 
					
						
							|  |  |  | ``` | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-05-24 22:52:35 +00:00
										 |  |  | </details> | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | ### ECMAScript 5 Compatibility
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | Since the library uses functions like `Array#forEach`, older browsers require | 
					
						
							|  |  |  | [shims to provide missing functions](http://oss.sheetjs.com/js-xlsx/shim.js). | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | To use the shim, add the shim before the script tag that loads `xlsx.js`: | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | ```html | 
					
						
							| 
									
										
										
										
											2017-09-24 23:40:09 +00:00
										 |  |  | <!-- add the shim first --> | 
					
						
							|  |  |  | <script type="text/javascript" src="shim.js"></script> | 
					
						
							|  |  |  | <!-- after the shim is referenced, add the library --> | 
					
						
							|  |  |  | <script type="text/javascript" src="xlsx.full.min.js"></script> | 
					
						
							| 
									
										
										
										
											2017-03-20 09:02:25 +00:00
										 |  |  | ``` | 
					
						
							|  |  |  | 
 |