谁能将dmpc移植到金庸群侠传安卓移植版手机上,中国人民会感

08:20:41 UTC
如题 两个组件没有联系的,一个组件要想改变另一个组件的state要怎么做呢
08:35:05 UTC
state是react组件内部的状态,外部是无法改变的。
但想让两个组件产生联系,可以用props
08:58:54 UTC
(1)如果不使用类似redux这样的方案的话,解决办法只能是在这2个组件的共同父元素上设定公用的state,然后通过props传递给这2个组件,当某个组件修改state的时候,自然会同步到另一个组件。(2)按照第一点来做的话,就会很麻烦。这其实就涉及到组件间通信的问题,推荐楼主去看看类似redux这样的解决方案,配合使用的话就能比较好的解决楼主的问题。
10:42:17 UTC
拙见, 供讨论.如果两个组件是父子关系的话, 子组件可以通过将操作 state 的一些行为封装为类方法暴露出来, 父组件通过 refs 调用子组件相应的方法.如果是同在某个组件下的, 之间并没有直接联系的话, 可以在他们公有的父组件下做一些操作, 一种如
所说, 另一种还是第一种情况的延伸, 公有的父组件可以通过 refs 获取 A 的类方法, 作为 props 传递给 B.其他情况暂时未想到
09:21:24 UTC
目前考虑到网站state数量比较少,复杂度低于redux学习陡峭程度前提下还没考虑用redux。
我的解决方案是用回调函数,比如 b/c都是a的子组件。想通过b去修改c的state。
props一个方法,这个方法能修改a的state。 b通过调用这个方法改变a的state 后。setState会触发渲染。这时候渲染的c
传入一些特别的props 去改变你想改变的c中的state
09:34:54 UTC
谢谢 想想还是不想再加组件 加个公共父类好了
14:08:17 UTC
可以自己实现一个全局事件系统:组件A监听事件,事件监听函数中修改组件A的状态。组件B触发事件。但不太建议这种做法,因为这破坏了react的单向数据流的清晰性的优势。还是按照上面的大大们的方法来做吧:数据放在父类,传递一个改变父类state的回调函数给子组件;或者使用redux。
11:30:32 UTC
想问问你的2个组件之间的关系?我之前做过利用子组件改变了父组件的state,其实就是在父组件中写一个方法,该方法主要就是改变state,再将这个方法通过props的方式传给子组件。这样就可以做到在子组件中触发方法改变父组件的state值。不知道是否能帮到你
02:20:38 UTC
如果是我的话,我还是会老老实实按照 redux 的思路走 action,虽然复杂点,但优雅啊
15:56:31 UTC
今天想看看react英文博客有什么更新(/
已废。。不知道为何)才想起第一个例子。。写个留言板。。其实就是很好的
留言编写组件 去修改 留言显示 组件的state呀
17:28:26 UTC
史上最正确的方式是:将 state 分离出去,比如这里放在 store.js 里面。store 里面有数据,也暴露有 CRUD 数据的方法,以及最重要的 发布/订阅(pub/sub) 事件机制。
原则上是,修改数据都通过分离出去的数据暴露的接口修改数据。组件接收到的数据都是 store 里面的。
组件的状态通过订阅获得 store 的更新设置 state。总之,需要 store 数据的就订阅,需要修改 store 数据的就触发事件更新。
这样的优点是,组件更新可以限制到最小单位,而不会导致根组件的 setState, 导致整棵树 render 的性能损失,性能不错(虽然没用过 mobx, 大体就是这样的原理!?);另一个自不必说,解耦。
讲的比较粗浅,总的来说,事件机制是组件解耦的万能药。弄懂了这点,从此,不论是 redux 还是 flux,不过尔尔,你都能泰然处之。
07:47:21 UTC
要看这个两个组件之间的关系 父与子的关系 props +组件生命周期足够了
如果是子与父的话,就callback 回调函数。给你个参考
17:01:52 UTC
有耐心的话,就看这个如何在一个react模块组件里引入嵌套另一个react模块组件
用webpack打包,如何在一个组件里引入嵌套另一个react模块组件,每一个react组件单独写成一个jsx文件,想要进行嵌套,如果直接用import 引入jsx文件,会不识别,好像要先打包成就js文件,但是他只会通过一个入口文件进行打包,求指教。
信息太少,能否贴出 webpack 的配置和基本代码?
默认配置下,import 需要写全文件名,如 import Container from './Container.jsx'
webpack 可以直接 import jsx
可以参考我的webpack配置:
http://my.oschina.net/wolfx/blog/653007
另外webpack的确是按入口来打包的, 会把入口以及他依赖的模块打包成一个文件delphi(82)
数据库(333)
我们怎样得到状态呢?ADOTable(其他任何数据集组件也一样没有)没有处理状态改变时的触发器。
&&&&& 好,让我们看一看:对每个数据集组件,我们通常使用一个数据源组件来呈现于一个或多个数据可视化控件的连接。就是这样。
&&&&& 每个数据源组件都有一个OnStateChange事件,无论潜在的数据集状态什么时候改变它都见触发。把下面的代码放到OnStateChange事件句柄中,用表单的标题显示ADOTable1数据集组件的当前状态:
(**** 转载敬请注明-本文出处:南山古桃(nsgtao)的百度空间:/nsgtao/ ****)
&&&&&&procedure&TForm1.DataSource1StateChange(Sender: TObject);
&&&&& var&&& ds:&string;
&&&&& begin
&&&&&&&&&case&ADOTable1.State&of
&&&&&&&& dsInactive: ds:='Closed';
&&&&&&&&& dsBrowse : ds:='Browsing';
&&&&&&&& dsEdit&&& : ds:='Editing';
&&&&&&&&& dsInsert : ds:='New record inserting';
&&&&&&&&&else
&&&&&&& ds:='Other states'
&&&&&&&&&end;
&&&&& Caption:='ADOTable1 state: ' +
&&&&& end;
南山古桃(nsgtao):/nsgtao/ 转自
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2810147次
积分:38504
积分:38504
排名:第96名
原创:399篇
转载:4532篇
评论:605条
(17)(1)(9)(35)(49)(124)(119)(165)(88)(55)(81)(308)(299)(255)(184)(118)(99)(3)(2)(4)(1)(21)(69)(66)(184)(342)(292)(65)(109)(273)(251)(273)(184)(20)(132)(81)(288)(210)(83)

我要回帖

更多关于 新仙剑手机安卓移植版 的文章

 

随机推荐