小编Dan*_*ter的帖子

如何在忽略空值的同时扩展对象?

比方说,我有一个对象

var user = { 
    "Name": "Dan", 
    "Age": 27, 
    "Hobbies": null 
};
Run Code Online (Sandbox Code Playgroud)

我想合并到下面的基础对象,以便我的用户对象将具有所有必需的属性

var base = { 
    "Name": null, 
    "Height": null, 
    "Age": null, 
    "Hobbies": [
        { "Name": "Tennis", "Location": null },
        { "Name": "Football", "Location": null },
        { "Name": "Rugby", "Location": null }
    ]
};
Run Code Online (Sandbox Code Playgroud)

合并到两个对象的最简单方法是使用用户对象扩展基础对象,如下所示

$.extend(true, base, user);
Run Code Online (Sandbox Code Playgroud)

这将修改基础对象

{ 
    "Name": "Dan", 
    "Height": null, 
    "Age": 27, 
    "Hobbies": null
};
Run Code Online (Sandbox Code Playgroud)

我的问题是如何让extend方法不覆盖空值?例如,在这个例子中,如果用户爱好列表为空,我怎么还能获得爱好列表所以我最终得到以下内容

{ 
    "Name": "Dan", 
    "Height": null, 
    "Age": 27, 
    "Hobbies": [
        { "Name": "Tennis", "Location": null },
        { "Name": "Football", "Location": …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

如何找到相对于App Window的UICollectionViewCell坐标

是否有可能将UICollectionViewCell's坐标从相对于UICollectionView相对于相对于superview?的坐标转换为?到目前为止,我一直无法UICollectionViewCell's在触摸时转换坐标superview.这是我到目前为止所尝试的:

- (void)collectionView:(UICollectionView *)collectionView  
        didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
    UICollectionViewCell *cell = 
     [collectionView dequeueReusableCellWithReuseIdentifier:@"CollectionViewCell" 
                                               forIndexPath:indexPath];

    CGRect frame = CGRectMake(0.0, 
                              0.0,  
                              cell.frame.size.width, 
                              cell.frame.size.height);
    frame.origin = [cell convertPoint:cell.frame.origin 
                               toView:self.view];
}
Run Code Online (Sandbox Code Playgroud)

我想创建一个新的框架,它起源于单元格在视图上的位置,而不是在视图中UICollectionView.任何帮助都会非常感谢.

xcode objective-c ios uicollectionview uicollectionviewcell

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

CSS地狱,我只想要一个最小尺寸和1像素间隙的盒子

请帮助用CSS实现这一点:我有一系列文本字符串,从1个字符到200个字符.我需要在单独的框中将它们显示在网页中.

  • 盒子流程类似于文本,从左到右直到页面结束然后换行
  • 每个框的背景颜色必须是青色.
  • 最小宽度和高度必须都是50像素
  • 盒子之间1-2个像素空间(可能有余量= 1)
  • 文本和框边缘之间必须至少有两个像素
  • 文本垂直对齐到中间
  • 文本水平对齐到中心
  • 盒子的最大宽度必须为300像素
  • 如果文本不适合50x300,则会在框内裁剪(框不会生长)
  • 每个盒子应该有1个像素的黑色边框

这对于经验丰富的人来说必须简单!我已经尝试了几乎所有可能的CSS标签; 但总是有些不对劲.我读到了关于CSS拳击的内容,但令人惊讶的是它只是让它更加完整.

<style>
z {
    min-width: 50;
    #min-height: 50;
    padding: 1px;
    padding-color: magenta;
    margin: 1px;
    margin-color: red;
    #padding-left: 10px;
    display: table-cell;
    #height: 50;
    #vertical-align: middle;
    #text-align:center;
    background-color: cyan;
    #border: 1px;
    #border-color:green;
    /* padding:10px 10px 10px 10px; */
    border-top:1px solid
    border-style:solid;
    border-color:#ff0000 #0000ff;
    outline-style:dotted;
    outline-color:#00ff00;
    outline-width: 1px;
    color: blue;
}
</style>

<html>
    <z>1</z>
    <z>abcdefghijklmnope</z><z>2</z><z>blablablabla</z>
</html>
Run Code Online (Sandbox Code Playgroud)

我正在粘贴这个,所以你可以看到我尝试的是多么艰难.

css

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