docs.sheetjs.com/docz/docs/02-getting-started/01-installation/02-frameworks.md

89 lines
2.5 KiB
Markdown
Raw Normal View History

2022-05-16 03:26:04 +00:00
---
sidebar_position: 2
sidebar_custom_props:
summary: Angular, React, VueJS, Webpack, etc.
---
import current from '/version.js';
# Frameworks and Bundlers
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
Each standalone release package is available at <https://cdn.sheetjs.com/>. The
NodeJS package is designed to be used with frameworks and bundlers. It is a
proper ECMAScript Module release which can be optimized with developer tools.
<Tabs>
<TabItem value="npm" label="npm">
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
npm i --save https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
2022-05-16 03:26:04 +00:00
</code></pre>
</TabItem>
<TabItem value="pnpm" label="pnpm">
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
pnpm install https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
2022-05-16 03:26:04 +00:00
</code></pre>
</TabItem>
<TabItem value="yarn" label="Yarn" default>
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
yarn add https://cdn.sheetjs.com/xlsx-${current}/xlsx-${current}.tgz`}
2022-05-16 03:26:04 +00:00
</code></pre>
</TabItem>
</Tabs>
Once installed, the library can be imported under the name `xlsx`:
```js
import { read, writeFileXLSX } from "xlsx";
```
2022-08-13 22:01:26 +00:00
The ["Bundlers" demo](../../demos/bundler) includes examples for specific
bundler tools.
2022-07-25 23:18:00 +00:00
:::warning
Older releases are technically available on the public npm registry as `xlsx`,
but the registry is out of date. The latest version on that registry is 0.18.5
This is a known registry bug
<https://cdn.sheetjs.com/> is the authoritative source for SheetJS scripts.
For existing projects, the easiest approach is to uninstall and reinstall:
<Tabs>
<TabItem value="npm" label="npm">
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
npm rm --save xlsx
npm i --save file:vendor/xlsx-${current}.tgz`}
2022-07-25 23:18:00 +00:00
</code></pre>
</TabItem>
<TabItem value="pnpm" label="pnpm">
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
pnpm rm xlsx
pnpm install file:vendor/xlsx-${current}.tgz`}
2022-07-25 23:18:00 +00:00
</code></pre>
</TabItem>
<TabItem value="yarn" label="Yarn" default>
<pre><code parentName="pre" {...{"className": "language-bash"}}>{`\
2022-08-07 07:48:40 +00:00
yarn remove xlsx
yarn add file:vendor/xlsx-${current}.tgz`}
2022-07-25 23:18:00 +00:00
</code></pre>
</TabItem>
</Tabs>
:::
2022-06-05 22:43:44 +00:00
## XLS Support
2022-05-16 03:26:04 +00:00
2022-06-05 22:43:44 +00:00
If XLS support is required, `cpexcel.full.mjs` must be manually imported:
2022-05-16 03:26:04 +00:00
```js
/* load the codepage support library for extended support with older formats */
import { set_cptable } from "xlsx";
import * as cptable from 'xlsx/dist/cpexcel.full.mjs';
set_cptable(cptable);
```