小编Xpl*_*ora的帖子

如何使用draft.js更改光标位置?

我想知道在键盘命令上完成文本插入后如何更改 Draft.js 中的光标位置。因此,我目前正在使用_handleKeyCommand(cmd)每当用户按下特定按钮时插入自定义文本块。接下来我尝试了以下操作:

currentState = this.state.editorState;
var selectionState = this.state.editorState.getSelection().getStartKey();
this.setState({editorState: EditorState.forceSelection(currentState, selectionState)});
Run Code Online (Sandbox Code Playgroud)

但这一直崩溃并显示错误消息

类型错误:selection.getHasFocus 不是函数

虽然我进口了SelectionState. 那么如何正确更改光标位置(最好是插入之前的位置)以及我在这里做错了什么?

text-editor selection cursor-position reactjs draftjs

5
推荐指数
1
解决办法
1万
查看次数

当使用不同的函数渲染时,ReactJS 子组件会丢失其状态

在编写 ReactJS 组件时,我发现子组件有时会丢失状态。事实证明,如果子组件使用不同的渲染函数渲染,就会发生这种情况。

IE

父组件有 2 个子渲染函数,根据不同的条件,它要么在主体中渲染子组件,要么在标头中渲染子组件。

    ...

    renderInHeader = () => (<Header><ChildComponent /></Header>);

    renderInBody = () => (<Body><ChildComponent /><Body>);

    render = () => {
      if (somethingHappens) {
        return this.renderInHeader();
      }
      return this.renderInBody();
    }

    ...
Run Code Online (Sandbox Code Playgroud)

这意味着,当 时somethingHappens,它将使用不同的渲染函数来渲染ChildComponent.

那么,ChildComponent就会失去它的状态。(子组件的状态被重置)。


我理解为什么会发生这种情况,实际上我有点惊讶孩子的状态没有更频繁地重置(即每次父级重新渲染该节点时重置)。

然而,处理这个问题的理想解决方案是什么?

  • 避免在子组件中使用状态?(因为不能保证安全?)

  • key=给ChildComponent一个a ,这样在重新渲染的时候就可以把它当作一个独立的节点了?(不确定是否key可以在映射器之外工作)

  • 使用ref?(不知道是否可以这样工作)

  • 使用 React 16 中的新“Portal”?(还没试过)


注意:我知道我可以使用变量 forHeaderBody,所以只需要一个渲染函数。然而,现实世界的情况可能更复杂,可能有多个子组件分布在不同的区域。

IE

        ...

    renderInBody = () => (
        <Body>
            <Header>
                <ChildComponent1 />
                <ChildComponent2 />
            </Header>
            <ChildComponent3 …
Run Code Online (Sandbox Code Playgroud)

state children reactjs

5
推荐指数
1
解决办法
2887
查看次数

如何检测Angular 4中表单控件数组的变化?

我正在研究Angular 4项目.我需要检测表单控件数组的更改.例如,我有一个名为providers的表单控件数组,如何检测其更改?

export class CustomFormArray {
 public form: FormGroup;

 constructor(private _fb: FormBuilder) {
      this.form = _fb.group({
           providers: _fb.array([])
      });
  }
} 
Run Code Online (Sandbox Code Playgroud)

angular angular4-forms

5
推荐指数
1
解决办法
1万
查看次数

如何在amCharts柱形图中设置自定义颜色?

如何在下图中用红色替换默认黄色?基本上,我需要实现红色和绿色组合.

在此输入图像描述

提前致谢!!

amcharts

4
推荐指数
1
解决办法
1万
查看次数

如何禁用Category Axis上的标签自动隐藏?

在amCharts柱形图中,当用户缩小浏览器宽度时,类别轴上的标签会被交替隐藏.

在此输入图像描述

请在注释中引用JSFiddle(当向内拖动JSFiddle输出框时,amCharts开始在类别轴上隐藏替代标签,如上面的屏幕截图所示).

如何禁用类别轴上标签的自动隐藏?当用户缩小浏览器大小时,要求是缩小图表(不隐藏任何标签).当您添加超过特定计数的更多列时,会发生此问题.

css3 amcharts media-queries

3
推荐指数
1
解决办法
4083
查看次数

如何使用Python过滤JSON数据?

如何使用Python 将JSON数据从input.json转换为output.json?通常,什么数据结构用于过滤JSON数据?

文件:input.json

[
{
    "id":1,
    "a":22,
    "b":11
},
{
    "id":1,
    "e":44,
    "c":77,
    "f":55,
    "d":66
},
{
    "id":3,
    "b":11,
    "a":22
},
{
    "id":3,
    "d":44,
    "c":88
}
]
Run Code Online (Sandbox Code Playgroud)

文件:output.json

[
{
    "id":1,
    "a":22,
    "b":11,
    "e":44,
    "c":77,
    "f":55,
    "d":66
},
{
    "id":3,
    "b":11,
    "a":22,
    "d":44,
    "c":88
}
]
Run Code Online (Sandbox Code Playgroud)

任何指针将不胜感激!

python json

3
推荐指数
1
解决办法
6605
查看次数

如何最小化amCharts柱形图中列之间的空间?

chart.columnSpacing属性不适用于简单列图表.我需要最小化两列之间的空间.

如何最小化简单柱形图中列之间的空间?

amcharts

2
推荐指数
1
解决办法
4555
查看次数

Windows - 如何在应用程序启动之前在应用程序的内核中注入代码?

我想制作一个恶意软件分析软件,我必须将代码注入到进程的不同kernel32函数中,比如Sleep来覆盖恶意软件尝试进行的任何睡眠,ExitProcess在获取进程被杀死之前转储内存等

我尝试启动该进程暂停然后我尝试枚举库希望我可以得到kernel32 rva但是当我启动进程暂停时看起来甚至没有加载库.

code-injection

2
推荐指数
1
解决办法
563
查看次数

如何使用jQuery删除Bootstrap Multiselect中的所有选项?

我想使用jQuery动态删除所有Bootstrap Multiselect选项.我怎么能删除相同的?

代码我尝试过:

$("#userGroupDbKeyAjax2 option").remove(); 
Run Code Online (Sandbox Code Playgroud)

但它不能在bootstrap多选中工作.

jquery twitter-bootstrap bootstrap-4

2
推荐指数
1
解决办法
5086
查看次数

如何创建表 AWS Athena --&gt; 映射 Json 数组?

如何为 Json Array 格式创建表 Athena(AWS)?

JSON 格式示例:

{  
   "Tapes":[  
      {  
         "Status":"AVAILABLE",
         "Used":0.0,
         "Barcode":"TEST1217F7",
         "Gateway":"Test_Report",
         "UsedGB":0.0,
         "Date":"06-11-2017",
         "SizeGB":107.0
      },
      {  
         "Status":"AVAILABLE",
         "Used":0.0,
         "Barcode":"TEST1227F7",
         "Gateway":"Test_Report",
         "UsedGB":0.0,
         "Date":"06-11-2017",
         "SizeGB":107.0
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

我想获得下面的输出格式:
在此处输入图像描述

我已尝试根据此网站解决问题,请在 此处输入链接描述

amazon-web-services amazon-athena

2
推荐指数
1
解决办法
3781
查看次数