- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我正忙于试验 Blueprint.js 和 MultiSelect 组件,据我所知,它仍在积极开发中:http://blueprintjs.com/docs/#labs.multiselect
我从来没有使用过 TypeScript,据说是
// Select<T> is a generic component to work with your data types.
// In TypeScript, you must first obtain a non-generic reference:
const FilmSelect = Select.ofType<Film>();
所以我的问题是,是否可以在不使用 TypeScript 的情况下在 Javascript 中使用此组件?
我的react组件目前没有渲染,错误如下:
multiSelect.js?64c9:37 Uncaught TypeError: Cannot read property 'map' of undefined
组件定义为:
import React from 'react';
import Flexbox from 'flexbox-react';
import {Dialog, Button, Intent} from '@blueprintjs/core';
import {MultiSelect} from '@blueprintjs/labs';
import {inject, observer} from 'mobx-react';
import Avatar from 'react-avatar';
@inject('AccountRelationshipsStore', 'AccountUsersStore', 'ToastStore')@observer
export default class AccountRelationshipsNewRelationship extends React.Component {
constructor(props) {
super(props);
this.state = ({isSubmitting: false});
}
renderUser(handleClick, isActive, user) {
return (
<span>{user.fullName}</span>
);
}
renderTag(user) {
return user.fullName;
}
handleItemSelect(item) {
console.log(item);
}
render() {
return (
<Dialog isOpen={this.props.dialogOpen} onClose={() => this.props.toggleDialog()} canOutsideClickClose={true} title={I18n.t('js.add_a_new_user_relationship', {
type: this.props.AccountRelationshipsStore.activeRelationship.name.toLowerCase(),
name: this.props.AccountRelationshipsStore.activeUser.fullName
})} className='side-dialog' inline={true}>
<form>
<div className='pt-dialog-body'>
<Flexbox flexDirection='column' flexGrow={1}>
<Flexbox flexDirection='row' justifyContent='center' flexGrow={1}>
<Avatar src={this.props.AccountRelationshipsStore.activeUser.imageFileName} size={100} round={true} className=''/>
</Flexbox>
<Flexbox flexDirection='row' justifyContent='center' flexGrow={1} marginTop='10px'>
<p className='pt-text-muted'>{this.props.AccountRelationshipsStore.activeUser.fullName}</p>
</Flexbox>
<Flexbox>
<MultiSelect items={this.props.AccountUsersStore.users} itemRenderer={this.renderUser.bind(this)} onItemSelect={this.handleItemSelect.bind(this)} tagRenderer={this.renderTag.bind(this)}/>
</Flexbox>
</Flexbox>
</div>
<div className='pt-dialog-footer pt-dialog-footer-bottom'>
<div className='pt-dialog-footer-actions'>
<Button text={I18n.t('js.cancel')} onClick={() => this.props.toggleDialog()}/>
<Button intent={Intent.PRIMARY} type='submit' text={I18n.t('js.set_relationships')} loading={this.state.isSubmitting}/>
</div>
</div>
</form>
</Dialog>
);
}
}
最佳答案
是的,您可以将组件与 JS 一起使用。只需省略通用类型参数:
const UserMultiSelect = MultiSelect.ofType();
<UserMultiSelect items={this.props.AccountUsersStore.users} ... />
我承认这有点不直观,因此可能需要更新文档。
关于javascript - 我是否必须将 TypeScript 与 Blueprint.js 中的 MultiSelect(实验室)组件一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45594452/
我正在尝试创建一个具有 background-size:100% 100% css 规则的网站。它是位于内容后面的图像,其设计方式无论浏览器窗口的尺寸如何,它仍然可以正常工作。 我认为我的规则(如下所
Camel 2.23.1 Karaf 4.2.4 白羊座蓝图(用于注册所有内容的外部容器) Camel 蓝图(用于 Camel 路线) Camel CXF(用于 rsServer) CXF 核心(用于
我正在尝试将一个 OSGI 蓝图 XML 文件导入到另一个 OSGi 蓝图 XML 文件中。 例如。: 蓝图1.xml: blueprint2.xml:
我尝试做 this Blueprint CSS tutorial ,但无法让任何元素显示在最后 列中。我找到了 this solution ,表示 last 类可能有问题,但它对我不起作用。 有没有其
我使用蓝图作为我的 CSS 框架。我对它自定义选择字段的方式不满意,想恢复默认设置。 这里是 Blueprint 生成的 CSS: select { background-color: #FFFF
近日,Epic 公布了他们为次时代游戏准备的 Unreal 5 游戏引擎,以及一份效果惊艳的 Demo。据称,游戏中的每个资源有一百万个绘制三角面,每一帧有超过十亿个绘制三角面。也就是说,开发者构建
我在理解Blueprint.errorhandler和Blueprint.app_errorhandler之间的区别时遇到了一些麻烦。根据API文档(重点是我的): errorhandler(code
我正在使用 Api Blueprint 为 RESTful 搜索 API 开发 API 文档。我希望能够将过滤器传递给 API,以便我可以进行组装: filter[filtername1]=filte
我正在尝试对从客户那里收到的对象进行分类。 在服务器端,我定义了我的“蓝图”: { // "type1" type: 1, name: String, password: St
我想知道蓝图 CSS 是如何工作的——它是否使用一些标准尺寸(例如 40 像素宽的 24 列,或 48 像素宽的 20 列),通常是否有一个文件指定蓝图设置的细节? 最佳答案 官方quick star
我想使用 blueprint css 框架,但上一个版本发布是在一年多以前。两者都没有在 Github 存储库中提交。维护了吗? 最佳答案 蓝图已经过时了。 试试这个: http://getboots
我已经将 compass 与蓝图一起使用了一段时间,但我不明白的是为什么它会生成所有基本的蓝图 css 类。像这样: #container .span-3 { width: 110px; } #con
我目前有两个 OSGi 包(bundle1 和 bundle2)都通过 EBA 中的蓝图公开服务。在 bundle2 的 blueprint.xml 中,我想从 bundle1 中引用一个服务并将其注
在创建迁移脚本时我可以做这样的事情 Schema::table('books', function(Blueprint $table) { $table->st
所以我对如何使用 Flask 构建页面而不必声明每个 View 感到有点困惑。 我如何制作蓝图以在我要加载的页面上拾取? 假设这些是我的示例页面 templates/ layout.html
我有一个 blueprint.xml 用于部署在 Karaf 3.5.6 下的 Servicemix 下的 camel 应用程序,它看起来有点类似于下面显示的内容:-
我正在研究 Android 布局,我知道有一个新的(呃)东西叫做蓝图。我想知道蓝图 View 提供了什么。 我试过的 1. 添加按钮并通过约束移动它 我看不出两种设计 View (普通和蓝图)之间有什
假设我们在开发过程中开发了一个临时实时数据库,它形成了一个庞大而复杂的结构 json。有没有办法为 Firebase 的实时数据库定义蓝图,以便可以将临时数据库中的结构转移到生产环境,而无需当前临时数
我创建了一个 API,用于提供名为“Thumbnail”(/thumbnails) 的资源 { "name": "toto", "uri": "http://xxx" } 另一方面,我
我需要一些建议。 我的设置中有一些迁移文件。 在其中一些代码中,我看到了以下代码,其余代码中没有,我不确定它的用途 use Illuminate\Database\Schema\Blueprint;
我是一名优秀的程序员,十分优秀!