SaaS增长圈_明点网络

您现在的位置是:首页 > SaaS公司百科 > 海外SaaS简介 > 正文

海外SaaS简介

SaaS公司Slack概况、产品功能、融资历史及主要竞品介绍

SaaSHunter2023-03-24海外SaaS简介932

### Slack概况 Slack是一个基于云计算的即时通讯工具,由Tiny Speck LLC开发和运营。Slack可以使用通过Web浏览器、应用程序接口或电子邮件客户端进行访问。Slack的用户可以通过“频道”的方式进行沟通,这些频道可以是公共的,也可以是私人的。Slack被广泛应用于企业内部沟通和协作,并且支持与其他应用程序进行集成。

Slack产品功能

Slack的主要功能包括即时消息、文件共享、应用程序集成、搜索等。Slack的即时消息功能可以让用户实时沟通,并且可以通过@功能提醒指定的用户。Slack的文件共享功能可以让用户在平台上分享文件、图片等,还可以通过应用程序集成功能与其他应用程序进行集成,比如与GitHub、Google Drive等。此外,Slack还提供了强大的搜索功能,可以帮助用户更快找到相关的信息。

SaaS公司Slack概况、产品功能、融资历史及主要竞品介绍

Slack融资历史

Slack的融资历史可以追溯到2013年,当时公司获得了A轮融资。2014年,公司获得了B轮融资,并在2015年获得了C轮融资。2016年,公司获得了D轮融资。2017年,公司获得了E轮融资。2018年,公司获得了F轮融资。到目前为止,公司已经获得了7轮融资,总计融资额达到了12亿美元。

Slack主要竞品

Slack的主要竞品包括Microsoft Teams、Hipchat、Flock、Flowdock等。Microsoft Teams是微软的即时通讯工具,Hipchat是Atlassian旗下的即时通讯工具,Flock是一款基于云计算的即时通讯工

console.log(e.target.value); this.setState({ value: e.target.value }); }

onSearch = () => {
    console.log(this.state.value);
    var value = this.state.value;
    var data = [];
    for (var i = 0; i < this.state.list.length; i++) {
        if (this.state.list[i].name.indexOf(value) !== -1) {
            data.push(this.state.list[i]);
        }
    }

    this.setState({
        data: data,
        value: ''
    });
}

onAdd = (num) => {
    var data = this.state.data.slice();
    data[num].count++;
    this.setState({
        data: data
    });
}

onCreate = () => {
    var data = this.state.data.slice();
    data.push({name: '', count: 1});
    this.setState({
        data: data
    });
}

onSave = () => {
    var data = this.state.data.slice();
    //TODO 保存数据
    this.setState({
        data: data
    });
}

onDelete = (num) => {
    var data = this.state.data.slice();
    //TODO 删除数据
    this.setState({
        data: data
    });
}

render() {
    return (
        <div>
            <div className="container">
                <div className="row">
                    <div className="col-6">
                        <div className="input-group">
                            <input type="text" className="form-control" placeholder="请输入搜索内容"
                                   value={this.state.value} onChange={this.onChange}/>
                            <div className="input-group-append">
                                <button className="btn btn-outline-secondary" type="button"
                                        onClick={this.onSearch}>搜索
                                </button>
                            </div>
                        </div>
                    </div>
                    <div className="col-6">
                        <button className="btn btn-primary" type="button" onClick={this.onCreate}>新建</button>
                        <button className="btn btn-success" type="button" onClick={this.onSave}>保存</button>
                    </div>
                </div>
            </div>
            <div>
                <table className="table table-bordered" style={{marginTop: '10px'}}>
                    <thead>
                    <tr>
                        <th>名称</th>
                        <th>数量</th>
                        <th>操作</th>
                    </tr>
                    </thead>
                    <tbody>
                    {
                        this.state.data.map((item, index) => {
                            return (
                                <tr key={index}>
                                    <td>
                                        <input type="text" className="form-control"
                                               value={item.name} onChange={this.onChange}/>
                                    </td>
                                    <td>
                                        <input type="number" className="form-control"
                                               value={item.count} onChange={this.onChange}/>
                                    </td>
                                    <td>
                                        <button type="button" className="btn btn-success"
                                                onClick={() => this.onAdd(index)}>+
                                        </button>
                                        <button type="button" className="btn btn-danger"
                                                onClick={() => this.onDelete(index)}>-
                                        </button>
                                    </td>
                                </tr>
                            );
                        })
                    }
                    </tbody>
                </table>
            </div></p>

×