小编typ*_*ror的帖子

Objective-C结构的默认值以及如何测试

我正在尝试测试是否已经设置了属性.我知道有了我得到的物品:

CGRect ppGoalFrame;
LocalPlaySetup *localPlaySetup;
Run Code Online (Sandbox Code Playgroud)

我可以测试一下

if (localPlaySetup == nil)
Run Code Online (Sandbox Code Playgroud)

但如果我尝试使用== nil或== NULL测试CGRect

if (ppGoalFrame == nil)
Run Code Online (Sandbox Code Playgroud)

我明白了

invalid operands to binary == (have 'CGRect' and 'void *')
Run Code Online (Sandbox Code Playgroud)

那么CGRect"无效",无效,无......?在它设定之前?显然我无法将CGrect与void指针进行比较(我不能使用ppGoalFrame == void); 还有另一种测试方法吗?到目前为止Objective-C很容易理解,但是一旦C出现,我就会有点迷失.

c struct objective-c default-value

38
推荐指数
3
解决办法
3万
查看次数

在轻触视口底部时,阻止Mobile Safari显示工具栏

我们在iOS上的Mobile Safari(MS)中运行了一个简单的移动应用程序.当用户向下滚动页面n个像素时,"顶部"按钮从底部向上滑动.顶部按钮是固定位置.问题是,当您开始在MS中滚动时,导航和工具栏UI将被隐藏.当您点击"顶部"按钮时,它会显示底部工具栏,点击"顶部"按钮需要第二次点击.有没有办法禁用默认的"点击视口底部显示工具栏"的行为,所以我们的顶部按钮按预期工作(即跳转到页面顶部只需点击一下,而不是两个?

iphone mobile-safari ios

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

需要节点模块中另一个依赖项的依赖项

我有一个简单的节点应用程序,它对github上的另一个应用程序具有单一依赖性.依赖安装就好了npm install,但当我尝试在那里安装一些东西时,它说它不可用.例如,github应用程序将Mongoose安装为依赖项.我认为这个父应用程序将能够访问该模块,因为它在一个孩子:

var mongoose = require('mongoose')
Run Code Online (Sandbox Code Playgroud)

结构看起来像这样:

/app
  /node_modules
    /github_dependency [parent module]
      /node_modules
        /mongoose [child module]
Run Code Online (Sandbox Code Playgroud)

我是否只需要在父应用程序中包含mongoose作为依赖项,或者是否有办法通过子进程访问该模块?

mongoose node.js npm node-modules

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

使用mongoose/node.js共享数据库连接参数的最佳方法

我正在使用Mongoose来管理Mongo数据库.我的连接文件很简单:

var mongoose = require('mongoose')

mongoose.connection.on("open", function(){
  console.log("Connection opened to mongodb at %s", config.db.uri)
});
console.log("Connecting to %s", config.db.uri)
mongoose.connect(config.db.uri)

global.mongoose = mongoose
Run Code Online (Sandbox Code Playgroud)

然后在我的app.js中我就是

require('./database)
Run Code Online (Sandbox Code Playgroud)

并且"mongoose"变量在全球范围内可用.我不想使用全局变量(至少不是直接).有没有更好的方法通过单例模式或其他方法跨节点(我使用express.js)共享数据库连接变量?

mongoose mongodb node.js express

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

用'k'启动常量有什么意义?

我正在教自己Objective-C,我在很多书和例子中都注意到了'k'和骆驼套管的不断定义,例如

#define kMyConstant 0
Run Code Online (Sandbox Code Playgroud)

'k'有什么意义?这是Objective-C风格的独特之处,还是一般的C共同?为什么偏离(我一直认为是最佳实践)K_MY_CONSTANT风格?

谢谢.

constants objective-c

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

HAML中的条件HTML标记

如何格式化HAML以输出类似于用于跨浏览器定位的条件HTML标记的样式?

<!doctype html>
<!--[if lt IE 8]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]>    <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if IE 9]>    <html class="no-js ie9 oldie" lang="en"> <![endif]-->
<!--[if gt IE 9]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
Run Code Online (Sandbox Code Playgroud)

如果我添加一个条件,它也会将整个页面包装在条件中.我想过:plain在顶部使用HAML的过滤器并</html>在底部手动添加,但这对我来说似乎不太理想.

html haml

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

将bash脚本作为源而不使用源命令运行

有没有办法将脚本标记为"作为源运行",因此您不必添加source或"." 每次命令它?也就是说,如果我写一个名为"sup"的脚本,我想称之为

sup Argument
Run Code Online (Sandbox Code Playgroud)

而不是

source sup Argument
Run Code Online (Sandbox Code Playgroud)

要么

. sup Argument
Run Code Online (Sandbox Code Playgroud)

基本上,我正在尝试cd在脚本中使用.

bash

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

获取NSManagedObject的属性作为NSDictionary

如果我有一个从上下文中获取的NSManagedObject,如何从动态属性中创建一个NSDictionary,而不是只显式地将每个字段复制到字典中?

如果我的托管对象看起来像这样,例如:

@implementation Track

@dynamic artist;
@dynamic group;
@dynamic purchase_url;
@dynamic title;
@dynamic file_name;
@dynamic year;

@end
Run Code Online (Sandbox Code Playgroud)

从数据库中取出后,在这种情况下,我需要一个NSDictionary,其中每个@dynamic属性都设置了相同的属性.

core-data objective-c ios

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

Xcode:删除行热键

我正在寻找一种方法来映射一些热键,以便在Xcode中"删除光标所在的行".我在文本键绑定中找到了"删除到行尾"和"删除行开头",但我不知道如何完全删除行,无论我选择了什么.TextMate将此功能映射到Ctrl + Shift + D,如果可能,我会喜欢同样的事情.有任何想法吗?

xcode keyboard-shortcuts objective-c

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

嵌套类与Ruby中的紧凑类

处理最初的Rails项目,并使用Rubocop分析代码样式.这让我质疑Ruby的嵌套类在Rails的上下文中是如何工作的.例如,在我的引擎中,我有一个模型:

# app/models/app_core/tenant.rb
module AppCore
  class Tenant < ActiveRecord::Base
  end
end
Run Code Online (Sandbox Code Playgroud)

和一个控制器:

# app/controllers/app_core/tenant/members_controller.rb
module AppCore
  class Tenant::MembersController < ApplicationController
  end
end
Run Code Online (Sandbox Code Playgroud)

在模型的情况下,模块与路径相同,类名与文件名相同.在控制器的情况下,路径的第二部分"租户"是类名的一部分.

Rubocop告诉我,我应该在行中"使用嵌套类定义而不是紧凑样式" Tenant::MembersController,所以如果我理解正确的话......

module AppCore  
  class Tenant
    class MembersController < ApplicationController
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

......这不应该有所作为.

现在,我的问题是我将AppCore :: Tenant作为模型,然后AppCore :: Tenant看起来重新打开,并将MembersController类作为嵌套类添加到它.这是否意味着我的Tenant类将始终具有该嵌套类?我是否需要以不同的方式命名我的模型和控制器路径?这完全没问题,没什么值得担心的吗?不完全确定这意味着什么.

ruby ruby-on-rails rubocop

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