我最近发现需要在我的Reducer中深入融合.
我发现icepick.merge和lodash.merge都可以完成这项工作.
似乎icepick.merge是一种有效的方式,可以递归地合并和调用object.freeze.
当使用反应还原剂(和不变性)时,你应该何时使用icepick而不是lodash?在数组和对象上调用object.freeze是一种好习惯吗?
我一直在研究MEF和便携式领域以及在协作编程环境中使用它们的专业和缺点.
我发现了以下文章
http://www.thegecko.org/index.php/2010/06/pluggable-mvc-2-0-using-mef-and-strongly-typed-views/
哪个州
选择MEF而不是其他解决方案,例如Portable Areas,因为它允许所有插件在运行时作为单个站点组合在一起,而组件不需要相互引用.
我没有发现这两种技术之间有任何真正的深度比较,尽管我确实发现了以下没有任何答案的问题.
http://mef.codeplex.com/Thread/View.aspx?ThreadId=210370
花了一段时间进行搜索,是否有人对这两种技术有任何经验和/或洞察其中一种优于另一种的情况?
我有一个Starling Sprite,我想要获得触摸事件.我正在使用
content.addEventListener(TouchEvent.TOUCH, onTouch);
function onTouch(e:TouchEvent) {
var touch:Touch = e.getTouch(content) as Touch;
if (touch) {
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
但是,这只适用于Sprite的子项被触摸而不是它们之间的空间.我想如果我创建一个alpha'd图像并在其下面粘贴它应该接收触摸事件,但有更好的方法吗?
我也在考虑听取舞台上的触摸并做相当于一个hitTestPoint().
我想出来了
var hitTest = (touch && content.hitTest(this.globalToLocal(new Point(touch.globalX, touch.globalY))));
Run Code Online (Sandbox Code Playgroud)
但这似乎也不起作用,触摸事件仅在触摸内容Sprite的子项时才起作用.
解:
最后,我使用了切尔尼夫建议的alpha'd Quad
bg = new Quad(width, height);
bg.alpha = 0;
addChildAt(bg, 0);
Run Code Online (Sandbox Code Playgroud) 在使用iOS7(未经测试6)的iPhone 5s上,我的应用程序在屏幕的左侧和右侧有黑条减少了屏幕尺寸,但是在我到目前为止测试的其他所有iOS设备上正确打开全屏.截图如下.

我一直在寻找,并没有发现任何提及这个错误,虽然已经复制了两个iPhone 5的iOS7设备,但绝对是一个问题.
我正在使用Air 3.9.
有没有人遇到这个/知道如何解决?
我想创建一个可重复使用的redux表模块,它将存储和更新页码,显示的总页数等,我可以在所有页面之间共享.
但是,我需要更新操作来触发refreshdata操作,该操作将根据页面命中不同的端点.
因此,可能某些特定页面的内容会侦听"RefreshData"操作,然后触发另一个操作.实现这一目标的最佳方法是什么?我目前正在使用redux-thunk作为我的中间件,但一直在寻找redux-saga.
实现这一目标的最佳方法是什么?
**澄清**
我有多个页面/项目的表格,我想尽量减少代码重复.我想我可以制作一个droppable redux模块(action + reducer),然后单独指定REFRESH_DATA操作的处理程序,所以我不需要在这个文件中放置开关.我认为使用redux-saga我可以监听REFRESH_DATA操作并根据当前页面进行切换?或者任何更好的建议.
export const ITEMS_PER_PAGE_UPDATED = 'ITEMS_PER_PAGE_UPDATED'
export const CURRENT_PAGE_UPDATED = 'CURRENT_PAGE_UPDATED'
export const REFRESH_DATA = 'REFRESHDATA'
export const DATA_REFRESHED = 'REFRESHDATA'
export function currentPageUpdated(value) {
return function (dispatch) {
dispatch({
type: CURRENT_PAGE_UPDATED,
value
})
dispatch({type:REFRESH_DATA})
}
}
export function itemsPerPageUpdated(value) {
return function (dispatch) {
dispatch({
type: ITEMS_PER_PAGE_UPDATED,
value
})
dispatch({type:REFRESH_DATA})
}
}
function reducer(state={ pageNumber:1, pageSize:10, totalItems:0, totalPages:1, sortColumn:null, sortAscending:true }, action) {
switch(action.type) {
case ITEMS_PER_PAGE_UPDATED:
return Object.assign({}, state, {pageSize: …Run Code Online (Sandbox Code Playgroud) 我正在使用酶来测试我的组件渲染.
测试ListView物品的常用方法是什么?例如,在下面的例子中测试单击一个项目时,它会触发onSelect传递id 的prop吗?
我目前正在使用react-native-mock这意味着ListView它不会呈现任何内容,并且我无法将项目分成单独的组件,因为它需要onSelect来自父项的prop.
export default class extends React.Component {
constructor(props) {
super(props);
this.dataSource = new ListView.DataSource({
rowHasChanged: (r1, r2) => r1 !== r2
})
}
renderItem = ({id, title}) => {
const {onSelect} = this.props;
return <Button onPress={() => onSelect(id)}>{title}</Button>;
}
render() {
const dataSource = this.dataSource.cloneWithRows(this.props.items);
return (
<ListView dataSource={dataSource}
renderRow={this.renderItem } />)
}
}
Run Code Online (Sandbox Code Playgroud) 我的应用程序在iOS上正常运行,但无法在Android上运行.我上周花了很多时间让它工作,并认为它是,并且问题已经恢复.
这里有完整的日志,以防有其他相关内容.https://pastebin.com/by6uCmPW
SyntaxError: \u can only be followed by a Unicode character sequence
Run Code Online (Sandbox Code Playgroud)
当我重新加载时,我得到一个白色屏幕,没有显示错误,我无法通过这个,并且它不会改变我是否连接到调试器.
我查看了源代码,错误来自以下行
这是来自React Native源的https://github.com/facebook/react-native/blob/a974c140db605ecbdf8d3faa7a079b7e2dcebb09/Libraries/ReactNative/YellowBox.js#L263
刷新后,我在logcat中收到以下错误,尽管模拟器中没有任何内容.
06-14 13:52:10.467:E/art(2691):没有找到com.facebook.react.bridge.Inspector com.facebook.react.bridge.Inspector.instance()的实现(试过Java_com_facebook_react_bridge_Inspector_instance和Java_com_facebook_react_bridge_Inspector_instance__)
我正在从MVC控制器动作返回一个JsonResult,并且一直试图删除一个属性但没有太多的快乐.
return Json(db.Pages.ToList(), JsonRequestBehavior.AllowGet);
Run Code Online (Sandbox Code Playgroud)
我已经尝试装饰我的课程
[IgnoreDataMember]
Run Code Online (Sandbox Code Playgroud)
属性,并在类的其他属性上使用[DataContract]和[DataMember]属性,但这似乎被忽略.
我在这里发现了一个帖子,它声明以这种方式返回json将使用JavaScriptSerializer,我尝试使用[ScriptIgnore],但vs2010不会将此识别为有效属性.http://teamezy.blogspot.com/2008/12/making-jsonresult-in-mvc-ignore.html
我是否需要以不同的方式返回数据才能使IgnoreDataMember或DataContract/DataMember工作?
我正在使用新版本的Bootstrap和jQuery
<script src="//code.jquery.com/jquery-1.10.2.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
Run Code Online (Sandbox Code Playgroud)
但是我在IE8中收到以下错误
Message: 'a.support.transition.end' is null or not an object
Line: 7
Char: 3824
Code: 0
URI: http://netdna.bootstrapcdn.com/bootstrap/3.0.3/js/bootstrap.min.js
Run Code Online (Sandbox Code Playgroud)
我找到了以下https://github.com/twbs/bootstrap/issues/7295 ..但是我想知道为什么更多人没有体验到这个问题.为什么IE8中的bootstrap似乎坏了?
我正在寻找一种方法来检查翻转事件是否适用于导航,如果不是,我将切换到点击事件.
我一直在寻找jQuery.Support和Modernizr,但没有发现任何具体的,最接近我发现是Modernizr的触摸,但似乎并不是我需要的.
检查这个的最佳方法是什么?
javascript ×3
reactjs ×3
asp.net-mvc ×2
jquery ×2
react-native ×2
air ×1
android ×1
c# ×1
enzyme ×1
flash ×1
html ×1
immutability ×1
ios ×1
ios7 ×1
iphone ×1
json ×1
lodash ×1
mef ×1
mvccontrib ×1
redux ×1
redux-saga ×1
touch ×1