有没有人用swift在xcode 6 beta中成功实现自定义NSValueTransformer?
我有以下快速课程:
import Foundation
class myTransformer: NSValueTransformer {
let amount = 100
override class func transformedValueClass() -> AnyClass!
{
return NSNumber.self
}
override func transformedValue(value: AnyObject!) -> AnyObject! {
return value.integerValue + amount
}
}
Run Code Online (Sandbox Code Playgroud)
所以这个变压器应该做的是,在gui中给定值增加100.
如您所见,变换器类现在出现在IB中的Value Transformer下拉列表中.

但如果我选择这个变压器应用程序崩溃:
2014-08-27 20:12:17.686 cdTest[44134:303]
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: 'Cannot find value transformer with name newTransformer'
Run Code Online (Sandbox Code Playgroud)
在AppDelegate中注册此变换器是否正确?
override class func initialize() {
let newTransformer = myTransformer()
}
Run Code Online (Sandbox Code Playgroud)
有谁知道这整个东西应该如何工作?
亲切的问候!马丁
我尝试在我的快递应用中的几条路线上使用csurf.这是方法:
var express = require('express');
var session = require('express-session');
var csrf = require('csurf');
// some more stuff
var csrfExclusion = ['/myApi','/unsecure'];
var app = express();
var conditionalCSRF = function (req, res, next) {
if (csrfExclusion.indexOf(req.path) !== -1){
next();
}
else{
csrf();
}
});
app.use(conditionalCSRF);
Run Code Online (Sandbox Code Playgroud)
甚至试过:
var conditionalCSRF = function (req, res, next) {
if (csrfExclusion.indexOf(req.path) !== -1){
next();
}
else{
csrf(req, res, next);
next();
}
});
Run Code Online (Sandbox Code Playgroud)
和
var conditionalCSRF = function (req, res, next) {
if (csrfExclusion.indexOf(req.path) !== -1){
next(); …Run Code Online (Sandbox Code Playgroud) 这更多是为了我的理解。为什么 express 中的 req.session 中有一个 cookie 对象?我使用 req.session 来存储登录状态和用户名。req.session 中的 cookie 对象与客户端 cookie 中的 cookie 属性相同,由 express.parseCookie 放置,但没有 sessionID。任何人都可以解释为什么这是在那里?它不能用于识别 cookie 和会话,因为 cookie 值和会话 ID (req.session.ID) 已经确定了,还是我错了?
- req.session -->
{ cookie:
{ path: '/',
_expires: null,
originalMaxAge: null,
httpOnly: true },
loggedIn: true,
username: 'luidpold' }
Run Code Online (Sandbox Code Playgroud) 大家好,榆树有一个奇怪的问题。
刚刚将 elm 表单从 0.17 更新到 0.18。项目在 0.17 中运行良好,现在编译器在 018 中抛出错误。
他就是这么说的:
-- SYNTAX PROBLEM ---------- elm-stuff/packages/elm- lang/html/1.1.0/src/Html.elm
Ran into a single quote in a variable name. This was removed in 0.18!
9| , section, nav, article, aside, header, footer, address, main', body ^
Change it to a number or an underscore, like main_ or main1
Or better yet, choose a more descriptive name!
Run Code Online (Sandbox Code Playgroud)
其他人有这个问题吗?
可能是什么问题:我已经在使用“main”了
main : Program Never
Run Code Online (Sandbox Code Playgroud)
Elm 似乎有问题,因为 Html 也有 main 函数.. 可能是这种情况吗?
亲切的问候
马丁
我目前正在尝试找出遍历列表的最佳方法。我说的穿越是什么意思?
例子:
我有一个用户列表:
userList : List User
userList =
[user, user, user, user]
Run Code Online (Sandbox Code Playgroud)
我有一个 currentUser,它必须是 userList 之外的用户
所以我想要实现的是:我想要像List.getNext这样的东西,它接受 userList 和当前用户并返回列表中相对于 currentUser 的下一个用户
这是我的实现。我认为这非常复杂 - 那么有人知道如何以更好的方式做到这一点吗?
traverseList : List a -> a -> Maybe (Maybe a)
traverseList list currentElement =
let
indexList =
List.indexedMap
(\index element ->
if element == currentElement then
index
else
-1
)
list
currentAsIndex =
let
mayBeIndex =
List.maximum indexList
in
case mayBeIndex of
Just index ->
index
Nothing ->
0
getWanted =
List.map
(\( …Run Code Online (Sandbox Code Playgroud)