小编jos*_*y89的帖子

在React中迭代不可变映射的键

通过Immutable.js Map对象处理迭代的好方法是什么?这有效:

{stocks.map((stock,key)=>{
    return ( <h3>{key}</h3> )
})}
Run Code Online (Sandbox Code Playgroud)

但在控制台中发出警告"warning.js:45警告:使用地图作为子节点尚未完全支持.这是一个可能被删除的实验性功能.将其转换为键控的ReactElements序列/迭代."

这已经在前面讨论了,这个链接提出了一些策略https://github.com/facebook/immutable-js/issues/667但它们对我来说似乎很笨拙.喜欢:

posts.entrySeq().map(o => 
     <Post value={o[1]} key={o[0]} />
)
Run Code Online (Sandbox Code Playgroud)

工作但很笨拙的感觉.有更自然的方式吗?

dictionary immutability reactjs

11
推荐指数
1
解决办法
5918
查看次数

React中img标记中的onError

我想用react中的默认图像替换断开的链接.我通常会使用onerror,但它没有按预期工作.具体来说,我得到了"在现有状态转换期间无法更新(例如在内部render)"的重复错误.最终,出现默认图像,但需要很长时间(此错误的许多打印).这是一个非常类似的问题:react.js替换img src onerror.我尝试了这个解决方案(第一个,不使用jQuery),但它导致了所描述的错误.我猜onError必须不断被触发,从而导致不断重新渲染.任何替代解决方案/修复?

   import React from 'react';
import { connect } from 'react-redux';
//import AddImageModal from '../components/AddImageModal.js';
import Button from 'react-bootstrap/lib/Button';
//import { getPostsByUserId } from 'actions'
import Posts from '../components/Posts.js';
var Modal = require('react-modal');
require('../../styles/AddImageModal.scss');
import { save_post } from '../actions';

 const customStyles = {
  content : {
    top                   : '50%',
    left                  : '50%',
    right                 : 'auto',
    bottom                : 'auto',
    marginRight           : '-50%',
    transform             : 'translate(-50%, -50%)'
  }
};

var MyWallScreen = React.createClass({

  getInitialState: function() …
Run Code Online (Sandbox Code Playgroud)

html image onerror reactjs

6
推荐指数
2
解决办法
4587
查看次数

使用反应传单注册事件

我正在尝试将 React-Leaflet 合并到我的 Create React App 中。我能够在底图上叠加 GeoJSON 数据,但我无法在该图层上注册点击次数。

在调查此问题时,我发现了以下 jsfiddle,https: //jsfiddle.net/n7jmqg1s/6/,它会在单击形状时注册事件,如 onEachFeature 函数所证明的那样:

onEachFeature(feature, layer) {
console.log(arguments)
const func = (e)=>{console.log("Click")};

layer.on({
    click: func
});
}
Run Code Online (Sandbox Code Playgroud)

我尝试将其复制并粘贴到我的 React 应用程序中,但在那里不起作用。我唯一改变的是使用 es6 导入而不是 window.React/window.LeafletReact。我不认为这会导致问题,但我认为这是可能的。

我查看了 onEachFeature 函数的参数。在 jsfiddle 中,我得到 2 个参数——特征和图层数据。但是,在我复制的示例中,我得到 3 个参数,其中前两个为空,第三个参数包含一个包含许多内容的对象,包括 (enqueueCallback : (publicInstance, callback, callerName))

我意识到这有点含糊,但我希望这个问题很容易被识别为对 React 或传单的误解。我认为这与我没有传递正确的范围或直接操作 DOM 或其他事情有关。但我不确定。我将不胜感激任何帮助。

这是我的组件代码:

    import React from 'react';
import { Map, TileLayer, Marker, Popup, GeoJSON } from 'react-leaflet';

export default class SimpleExample extends React.Component {
  constructor() {
    super();
    this.state = …
Run Code Online (Sandbox Code Playgroud)

javascript leaflet reactjs react-leaflet

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