我想在我的 react-app 中使用material-ui 芯片。问题是我想通过拖放移动筹码。不支持此功能material ui。是否有解决方法/扩展来使芯片可拖动?<!--
如果没有其他办法,我会换到另一个图书馆。有人知道吗?谢谢
//编辑-好的解决方案
您可以使用react-beautiful-dnd使任何组件可拖动
我有这个专栏定义:
headerName: "Date of birth",
field: "geburtsdatum",
editable:true,
cellEditorFramework: ChildGeburtstagEditor,
onCellValueChanged: (params: any) => {
console.log("New param" + params.newValue); //This value is every time null
},
resizable: true,
Run Code Online (Sandbox Code Playgroud)
ChildGeburtstagEditor:
import React, {useState} from 'react';
...
interface State {
value: string;
}
interface Props {
value: any;
getValue: any; //Tried to set getValue here
}
const ChildGeburtstagRenderer: React.FC<Props> = (props) => {
const [state, setState] = useState<State>({
value: "2019-08-08",
});
function getValue(): string { //THIS FUNCTION CANT BE FOUND?!?!?
return "Test"; …Run Code Online (Sandbox Code Playgroud) 我有material-ui - select并希望以编程方式关注此元素。
<FormControl
className="select100">
<Select
ref={(formControll) => { this.formControll = formControll; }}
native
value={value}
input={<Input id="integer" />}
>
{possibleOptions.map((item, key) => {
return (<option value={item} key={key}>{item}</option>)
})}
</Select>
Run Code Online (Sandbox Code Playgroud)
我尝试用ref和 写this.formControll.focus();但反应告诉我 focus() 不是一个函数。例如,通过按钮,裁判就可以工作。
PS:我不需要autoFocus
谢谢
我使用的是quarkus 1.2.0。
一般的:
客户端浏览器向服务器请求数据。服务器(Quarkus 应用程序)正在从客户端接收 utc 时间。(ok)现在服务器应该将数据库中的数据与客户端浏览器时间进行比较,并返回数据库中客户端时间之后的所有数据。
我有 postgres 作为数据库。每次当我将新数据保存或修改数据到数据库中时,我都会使用 UTC 时间保存数据。我<property name="hibernate.jdbc.time_zone" value="UTC"/>在 persistence.xml 中强制执行此操作。我已经检查过了,数据以UTC时间保存在postgres数据库中。
问题:
虽然数据库中数据是以utc保存的,但是quarkus从数据库中获取数据时,会将数据传输到本地时区(GMT+0100)。现在我遇到的问题是服务器正在将转换为(GMT)的数据与客户端时间(UTC)进行比较。
如何强制 quarkus 使用 UTC 时区?
Ag-Grid提供了该方法。ensureIndexVisible(index, 'middle');使用该方法,可以轻松滚动到选定的索引。但是,如何从用户那里获得滚动位置的最新已知索引?
例如:我们有一个包含600行的表。用户正在滚动-更新发生。桌子变了一点。现在,我的行为是表格滚动到顶部。用户现在必须再次滚动到他的最后位置。
我想将用户重定向到历史上一个滚动位置: ensureIndexVidisble(USERS_LAST_KNOWN_SCROLLING_POSITION, 'middle');
除信息外:用户不在表中工作。因此,我无法保存他在行中的最后单击。
我该如何实现?
我正在使用框架ag-grid()将行高更改为50px。
<div
className="ag-theme-balham"
style={{
height: '90vh',
width: '100%',
'font-size': '18px',
'row-height': '50px'
}}
>
<AgGridReact
rowHeight={50}
columnDefs={columnsTaenze}
rowSelection={'multiple'}
onFirstDataRendered={this.autoSizeAll}
rowDragManaged={true}
enableColResize={true}
animateRows={true}
rowData={this.props.tabledata}
enableFilter={true}
onRowDragEnd={this.onRowDragEnd}>
</AgGridReact>
</div>
Run Code Online (Sandbox Code Playgroud)
可悲的是,我无法使单元垂直居中。
我试图更改许多类,包括ag-cell。我试过的CSS:
.ag-cell{
line-height: 50px;
height: 100%;
vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
我在 stackoverflow 上发现了类似的问题,但没有一个让我找到解决方案。
我正在使用带有功能组件的 React 16.12.0。我有这个应用程序:
const App: React.FC<Props> = (props) => {
const [value1, setValue1] = useState<number>(1);
const [value2, setValue2] = useState<boolean>(true);
function incrementValue1(){
setValue1(value1+1);
}
function sendToServer(){
...do something...
}
return (
<>
<Row>
<Col>
<Child value2={value2} sendToServer={sendToServer} />
</Col>
</Row>
<Row>
<Col>
<Button variant="outlined"
color="primary"
size="large"
onClick={incrementValue1}>
Increment value1
</Button>
</Col>
</Row>
</>
);
};
export default App;
Run Code Online (Sandbox Code Playgroud)
尽管父组件正在更改一个值,这不符合子组件的利益,但每次父组件渲染时,子组件都会重新渲染。
我阅读了有关备忘录的内容,并且可以将任何组件合并到备忘录中,并使用备忘录的第二个参数来告诉 React 何时渲染。但我不确定这是否正确。在我重写很多类之前,我想知道哪种方法是正确的。例如:
const Child: React.FC<Props> = React.memo(props) => {
...Logic from child component...
},[props.value2])
Run Code Online (Sandbox Code Playgroud)
正确的做法是什么?