快速开始
只需几行代码,即可将 SheetNext 集成到您的项目中。支持 npm 安装和浏览器直接引入两种方式,满足不同场景需求。
npm install sheetnext
<div id="SNContainer" style="width:100vw;height:100vh;padding:0 7px 7px"></div>
import SheetNext from 'sheetnext';
import 'sheetnext/dist/sheetnext.css';
// 注意设置容器#SNContainer宽高
const SN = new SheetNext(document.querySelector('#SNContainer'));
<!-- 引入样式 -->
<link rel="stylesheet" href="dist/sheetnext.css">
<!-- 编辑器容器 -->
<div id="SNContainer" style="width: 100vw; height: 100vh;padding:0 7px 7px"></div>
<!-- 引入脚本 -->
<!-- <script src="dist/sheetnext.umd.js"></script> -->
<!-- 初始化,注意设置宽高 -->
<!-- <script>
const SN = new SheetNext(document.querySelector('#SNContainer'));
</script> -->
SheetNext 支持多种可选配置参数,用于定制编辑器的功能和外观。
const SN = new SheetNext(document.querySelector('#container'), {
AI_URL: "http://localhost:3000/sheetnextAI", // AI 中转地址
AI_TOKEN: "your-token", // AI 中转 token
licenseKey: "your-license-key", // 授权密钥
menuList: (defaultList) => { /* ... */ }, // 自定义菜单栏
menuRight: '<div>© SheetNext</div>' // 菜单栏右侧自定义内容
});
| 参数 | 类型 | 说明 |
|---|---|---|
AI_URL |
string |
AI 服务中转地址,用于配置 AI 功能的后端接口 |
AI_TOKEN |
string |
AI 服务访问令牌,用于鉴权认证 |
licenseKey |
string |
商业版授权密钥,社区版可不填 |
menuList |
function |
自定义顶部菜单栏,接收默认菜单并返回修改后的菜单 |
menuRight |
string |
菜单栏右侧区域的自定义 HTML 内容 |
const SN = new SheetNext(document.querySelector('#container'), {
menuList: (defaultList) => {
// 在"文件"菜单末尾添加自定义项
defaultList[0].items.push({
label: '我的自定义功能',
handler: () => alert('这是自定义菜单项!')
});
// 添加新的顶级菜单
defaultList.push({
label: '帮助',
items: [
{ label: '使用文档', handler: () => window.open('https://www.sheetnext.com/docs') },
{ label: '关于', handler: () => alert('SheetNext v1.0') }
]
});
return defaultList;
}
});
MenuList 结构定义:
interface MenuItem {
label: string; // 菜单项标签
handler?: () => void; // 点击处理函数
disabled?: boolean; // 是否禁用
tip?: string; // 提示信息(右侧显示)
divider?: boolean; // 是否为分隔线
}
interface Menu {
label: string; // 菜单标签
items: MenuItem[]; // 菜单项列表
}
type MenuList = Menu[];
注意事项:
menuList和menuRight只能在初始化时配置,后续无法修改- 如果不传入
menuList,将使用默认菜单(包含:文件、插入、公式、数据、视图、更多) - AI 功能需要配置
AI_URL才能使用,详见 AI 中转配置