5.0.8 • Published 3 months ago

dtable-sdk v5.0.8

Weekly downloads
76
License
-
Repository
-
Last release
3 months ago

dtable-sdk

dtable-sdk 是一个获取 seatable 中 base 数据的函数库, 通过接口函数向外提供服务,可用于插件开发, 第三方自定义开发,及其他应用的开发。

文档

开发实例

创建项目

基于 create-react-app 脚手架创建 dtable-sdk-demo 项目

npx create-react-app dtable-sdk-demo

安装依赖

在项目 dtable-sdk-demo 中安装 dtable-sdk 函数库

npm install dtable-sdk --save

创建测试数据

  1. 登录 https://colud.seatable.cn/ 网站(如无账号, 请注册账号后, 再登录)
  2. 点击 添加表格按钮, 创建 base "dtable-sdk"
  3. 选中 base "dtable-sdk", 右侧有一个 "更多" 图标
  4. 点击 "更多", 选中 "高级", 选中 "API token" 并点击
  5. 在打开的 API token 对话框中, 创建 API token
  6. 需要再次访问 API token 时, 执行 3, 4 两步可打开 API token 对话框, 查看已经创建的 API token 列表

注: 可以打开 base "dtable-sdk", 在内部执行创建子表, 创建视图, 添加行数据, 添加列数据等操作, 丰富测试数据

配置参数

  1. 在 dtable-sdk-demo 项目 src 目录下创建 settings.js 文件
  2. 更新 settings.js 配置文件, 内容如下
export default {
  "server": "https://cloud.seatable.cn",                     // 访问 base 所在的 域名
  "APIToken": "50c17897ae8b1c7c428d459fc2c379a9bc3806cc",    // 基于 base 创建的 api token
}

基于 dtable-sdk 提供的接口函数进行开发

  1. 更新 app.js 中的内容
import React from 'react';

class App extends React.Component {

  render() {
    return (
      <div>abc</div>
    );
  }
}

export default App;
  1. 在 app.js 文件中 引入 settings.js 文件 import config from './settings';

  2. 引入 dtable-sdk 提供的 DTable 接口对象 import DTable from 'dtable-sdk';

  3. 创建 DTable 对象实例

import React from 'react';
import DTable from 'dtable-sdk';
import config from './settings';

class App extends React.Component {

  constructor(props) {
    super(props);
    this.state = {

    };

    // 创建实例
    this.dtable = new DTable();
  }

  render() {
    return (
      <div>abc</div>
    );
  }
}

export default App;
  1. 初始化 dtable 配置参数, 建立与 base 的链接
import React from 'react';
import DTable from 'dtable-sdk';
import config from './settings';

class App extends React.Component {

  constructor(props) {
    super(props);
    this.state = {

    };
    // 创建 dtable 实例
    this.dtable = new DTable();
  }

  async componentDidMount() {
    // 初始化 dtable 的配置参数
    await this.dtable.init(config);

    // 建立与 base 的链接
    await this.dtable.syncWithServer();
  }

  render() {
    return (
      <div>abc</div>
    );
  }
}

export default App;
  1. 通过 dtable 提供的api, 获取 base 中的数据, 如 所有的子表, 子表的所有视图, 子表的所有列信息
import React from 'react';
import DTable from 'dtable-sdk';
import config from './settings';

import './App.css';

class App extends React.Component {

  constructor(props) {
    super(props);
    this.state = {
      tables: []
    };
    // 创建 dtable 实例
    this.dtable = new DTable();
  }

  async componentDidMount() {
    // 初始化 dtable 的配置参数
    await this.dtable.init(config);

    // 与 base 建立链接
    await this.dtable.syncWithServer();

    // 获取 base 中的数据
    const tables = this.dtable.getTables();
    const activeTable = this.dtable.getActiveTable();
    const views = this.dtable.getViews(activeTable);
    const columns = this.dtable.getColumns(activeTable);

    this.setState({
      tables: tables,
      views: views,
      columns: columns
    });
  }

  render() {

    if (this.state.tables.length === 0) {
      return (
        <div></div>
      );
    }

    const { tables, views, columns } = this.state;

    return (
      <div className="container">
        <div className="info-item">
          <div className="title">Table names:</div>
          {tables.map(table => {
            return <div>{table.name}</div>;
          })}
        </div>
        <div className="info-item">
          <div className="title">Active table's view names:</div>
          {views.map(view => {
            return <div>{view.name}</div>;
          })}
        </div>
        <div className="info-item">
          <div className="title">Active table's column Names:</div>
          {columns.map(column => {
            return <div>Column name: {column.name} -- Column type: {column.type}</div>;
          })}
        </div>
      </div>
    );
  }
}

export default App;

运行测试

执行 npm start, 可以在打开的页面中看到 base 中子表的信息, 子表中视图的信息, 子表中列的信息

其他 dtable-sdk api 使用, 可以参照文档进行相关测试和使用

其他参考模板

插件开发模板

5.0.8

3 months ago

5.0.6

7 months ago

5.0.6-beta.4

7 months ago

5.0.6-beta.3

7 months ago

5.0.6-beta.2

7 months ago

5.0.6-beta.1

8 months ago

5.0.5

10 months ago

5.0.4

11 months ago

5.0.3

1 year ago

5.0.2-alpha6

1 year ago

5.0.2-alpha4

1 year ago

5.0.2-alpha3

1 year ago

5.0.2-alpha2

1 year ago

5.0.2-alpha1

1 year ago

5.0.2-beta1

1 year ago

5.0.2-beta

1 year ago

5.0.2

1 year ago

5.0.0

1 year ago

4.3.3

2 years ago

0.2.3-beta

2 years ago

4.3.2

2 years ago

4.3.1

2 years ago

4.3.0

2 years ago

0.2.5

2 years ago

0.2.4

2 years ago

0.2.2-beta

2 years ago

0.2.1-alpha1

2 years ago

0.2.3

2 years ago

0.2.2

2 years ago

0.2.1-beta

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.1.10-beta1

2 years ago

0.1.10-beta

2 years ago

0.1.10

2 years ago

0.1.8

3 years ago

0.1.9

2 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.7

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.0.158

3 years ago

0.0.153

3 years ago

0.0.152

3 years ago

0.0.151

3 years ago

0.0.150

3 years ago

0.0.157

3 years ago

0.0.156

3 years ago

0.0.155

3 years ago

0.0.154

3 years ago

0.0.155-test

3 years ago

0.1.0

3 years ago

0.0.149

3 years ago

0.0.148

3 years ago

0.0.141-beta

3 years ago

0.0.147

3 years ago

0.0.142

3 years ago

0.0.141

3 years ago

0.0.140

3 years ago

0.0.146

3 years ago

0.0.145

3 years ago

0.0.144

3 years ago

0.0.143

3 years ago

0.0.140-lj-test

3 years ago

0.0.139

3 years ago

0.0.138

3 years ago

0.0.137

3 years ago

0.0.136

3 years ago

0.0.132-beta

3 years ago

0.0.131-beta

3 years ago

0.0.128

3 years ago

0.0.127

3 years ago

0.0.126

3 years ago

0.0.125

3 years ago

0.0.129

3 years ago

0.0.132-beta4

3 years ago

0.0.132-beta3

3 years ago

0.0.132-beta2

3 years ago

0.0.132-beta1

3 years ago

0.0.131

3 years ago

0.0.130

3 years ago

0.0.135

3 years ago

0.0.134

3 years ago

0.0.133

3 years ago

0.0.132

3 years ago

0.0.124-beta

4 years ago

0.0.117

4 years ago

0.0.116

4 years ago

0.0.119

4 years ago

0.0.118

4 years ago

0.0.120

4 years ago

0.0.124

4 years ago

0.0.123

4 years ago

0.0.122

4 years ago

0.0.121

4 years ago

0.0.115

4 years ago

0.0.114

4 years ago

0.0.113

4 years ago

0.0.112

4 years ago

0.0.111

4 years ago

0.0.110

4 years ago

0.0.106

4 years ago

0.0.109

4 years ago

0.0.108

4 years ago

0.0.107

4 years ago

0.0.105

4 years ago

0.0.104

4 years ago

0.0.103

4 years ago

0.0.102

4 years ago

0.0.101

4 years ago

0.0.100

4 years ago

0.0.99

4 years ago

0.0.98

4 years ago

0.0.97

4 years ago

0.0.95

4 years ago

0.0.96

4 years ago

0.0.94

4 years ago

0.0.92

4 years ago

0.0.93

4 years ago

0.0.90

4 years ago

0.0.91

4 years ago

0.0.89

4 years ago

0.0.88

4 years ago

0.0.86

4 years ago

0.0.87

4 years ago

0.0.84

4 years ago

0.0.85

4 years ago

0.0.80

4 years ago

0.0.81

4 years ago

0.0.82

4 years ago

0.0.83

4 years ago

0.0.77

4 years ago

0.0.78

4 years ago

0.0.79

4 years ago

0.0.76

4 years ago

0.0.75

4 years ago

0.0.74

4 years ago

0.0.73

4 years ago

0.0.70

4 years ago

0.0.71

4 years ago

0.0.72

4 years ago

0.0.69

4 years ago

0.0.68

4 years ago

0.0.67

4 years ago

0.0.66

4 years ago

0.0.65

4 years ago

0.0.64

4 years ago

0.0.63

4 years ago

0.0.62

4 years ago

0.0.61

5 years ago

0.0.60

5 years ago

0.0.59

5 years ago

0.0.58

5 years ago

0.0.57

5 years ago

0.0.56

5 years ago

0.0.55

5 years ago

0.0.54

5 years ago

0.0.52

5 years ago

0.0.53

5 years ago

0.0.51

5 years ago

0.0.50

5 years ago

0.0.49

5 years ago

0.0.48

5 years ago

0.0.46

5 years ago

0.0.47

5 years ago

0.0.45

5 years ago

0.0.44

5 years ago

0.0.43

5 years ago

0.0.42

5 years ago

0.0.40

5 years ago

0.0.41

5 years ago

0.0.39

5 years ago

0.0.38

5 years ago

0.0.37

5 years ago

0.0.36

5 years ago

0.0.35

5 years ago

0.0.34

5 years ago

0.0.33

5 years ago

0.0.32

5 years ago

0.0.31

5 years ago

0.0.30

5 years ago

0.0.29

5 years ago

0.0.28

5 years ago

0.0.27

5 years ago

0.0.26

5 years ago

0.0.25

5 years ago

0.0.22

5 years ago

0.0.23

5 years ago

0.0.24

5 years ago

0.0.21

5 years ago

0.0.20

5 years ago

0.0.19

5 years ago

0.0.18

5 years ago

0.0.17

5 years ago

0.0.16

5 years ago

0.0.15

5 years ago

0.0.14

5 years ago

0.0.13

5 years ago

0.0.10

5 years ago

0.0.11

5 years ago

0.0.12

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.3

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago