小编Mik*_*uck的帖子

调用没有括号的函数

今天我被告知可以调用没有括号的函数.我能想到的唯一方法是使用像apply或者这样的函数call.

f.apply(this);
f.call(this);
Run Code Online (Sandbox Code Playgroud)

但这些需要括号apply并将call我们留在第一个方位.我还考虑了将函数传递给某种事件处理程序的想法,例如setTimeout:

setTimeout(f, 500);
Run Code Online (Sandbox Code Playgroud)

但问题就变成了"你如何在setTimeout没有括号的情况下调用它?"

那么这个谜语的解决方案是什么?如何在不使用括号的情况下在Javascript中调用函数?

javascript

260
推荐指数
6
解决办法
4万
查看次数

在子目录中导入模块的Haskell语法是什么?

什么是Haskell在另一个目录中导入模块的语法?

我正在开始使用Haskell,并希望练习使用HUnit编写简单的函数TDD样式.不过,我无法弄清楚如何构建我的文件.HUnit附带的示例似乎是一个平面目录结构.

我想将我的测试和HUnit代码放在与实际代码不同的文件夹中.我很欣赏一个快速的示例导入语句和一个关于如何构建我的文件的建议.

如果重要的话,我现在正在使用GHCi和NotePad ++进行编码.

haskell hunit

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

keytool错误:java.lang.Exception:无法从回复建立链

生成密钥库:

keytool -genkey -alias tomcat -keyalg RSA -keystore my.keystore -keysize 2048
Run Code Online (Sandbox Code Playgroud)

生成证书签名请求(CSR):

keytool -certreq -alias tomcat -keyalg RSA -file my.csr -keystore my.keystore
Run Code Online (Sandbox Code Playgroud)

然后我去我的托管服务提供商并获得一些证书.这些我安装如下:

keytool -import -alias root -keystore my.keystore -trustcacerts -file gd_bundle-g2-g1.crt
keytool -import -alias intermed -keystore my.keystore -trustcacerts -file gdig2.crt
keytool -import -alias tomcat -keystore my.keystore -trustcacerts -file my.crt
Run Code Online (Sandbox Code Playgroud)

当我安装最终证书(my.crt)时,我收到以下错误:

keytool error: java.lang.Exception: Failed to establish chain from reply
Run Code Online (Sandbox Code Playgroud)

我相信我已经以正确的顺序导入了链条,所以我对此消息感到非常困惑.谁能看到我做错了什么?

tomcat keytool ssl-certificate

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

我如何知道安装了哪个版本的IIS7 URL Rewrite模块

我在IIS7中创建了一个重写规则,它使用conditions元素中的trackAllCaptures ="false"属性并使用outboundRules.一切都在我的测试系统上正常工作但是当我将这些规则部署到GoDaddy时,我得到错误:

Unrecognized attribute 'trackAllCaptures' 
Run Code Online (Sandbox Code Playgroud)

如果我包含outboundRules节点,我从服务器得到500错误.我与他们的支持进行了交谈,他们坚持认为他们支持2.0版本的URL Rewrite模块.我的问题是如何验证或与他们沟通如何检查该模块的版本?我无法在尝试安装它如何检查版本的任何地方找到方法.

我正在尝试为ASP.Net应用程序而不是WordPress重写URL,以便从URL中删除子文件夹,这在他们的多域托管中是一个非常普遍的问题.我使用的示例位于:http://weblogs.asp.net/owscott/archive/2010/05/26/url-rewrite-multiple-domains-under-one-site-part-ii.aspx

iis-7 url-rewriting

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

JAXB @XmlElements,不同类型但同名?

我有一个Animal类和Animal的扩展名为AnimalExtension.

public class Animal

public class AnimalExtension extends Animal
Run Code Online (Sandbox Code Playgroud)

这两个类之间的唯一区别是AnimalExtension有另一个名为animalId的实例变量.Animal没有此实例变量.

我也有自己的数据类型,我想要编组和解组XML.此数据类型称为AnimalList.在AnimalList中,有一个动物列表作为实例变量.

@XmlType(name = "AnimalList")
public class AnimalList{
    private List<Animal> animalList;
    ....
Run Code Online (Sandbox Code Playgroud)

animalList可以包含Animal和AnimalExtension.但是,在XML上我不希望该元素被命名为AnimalExtension; 我希望他们都拥有Animal的元素名称.当JAXB知道Animal实际上是AnimalExtension的一个实例时,我只希望显示额外的属性.所以,如果我有一个列表,看起来像

List<Animal> animalList = new LinkedList<Animal>();
AnimalExtension animalExtension = new AnimalExtension();
animalExtension.setAnimalId(1);
amimalExtension.setName("Don");

Animal animal = new Animal();
animal.setName("Mike");
animalList.add(animalExtension);
animalList.add(animal);
Run Code Online (Sandbox Code Playgroud)

我希望XML看起来像

<AnimalList>
   <Animal name="Don" id="1" />
   <Animal name="Mike" />
</AnimalList>
Run Code Online (Sandbox Code Playgroud)

这是我试图做的

    @XmlElements(
    {
            @XmlElement(name = "Animal", type = Animal.class),
            @XmlElement(name = "Animal", type = AnimalExtension.class)
        }
    )
    public List<Animal> getEntries() {
        return animalList;
    }
Run Code Online (Sandbox Code Playgroud)

代码编译但是当我尝试运行我的服务器时.它给了我这个与正在发生的事情无关的奇怪错误(BeanCreationException).我尝试使XmlElement的名称对于每种类型都不同并且有效,但这里的挑战是使名称相同.

org.springframework.beans.factory.BeanCreationException: Error …
Run Code Online (Sandbox Code Playgroud)

java jax-rs jaxb jersey

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

什么是Javascript中的(函数e(t,n,r){...})?

我正在研究List.js框架.这是一个起始代码.如果我删除它(甚至删除功能e)的周围"()",代码不起作用.

这是什么?我认为它已经在Javascript方法中定义了.

(function e(t,n,r){
  function s(o,u){
   if(!n[o]){
    if(!t[o]){
    var a=typeof require=="function"&&require;
    if(!u&&a) return a(o,!0);
    if(i)return i(o,!0);
    var f=new Error("Cannot find module '"+o+"'");
    throw f.code="MODULE_NOT_FOUND",f
    }

    var l=n[o]={exports:{}};
    t[o][0].call(l.exports,function(e){
    var n=t[o][1][e];
    return s(n?n:e)
    },l,l.exports,e,t,n,r)
   }

 return n[o].exports
 }

 var i=typeof require=="function"&&require;
 for(var o=0;o<r.length;o++)
 s(r[o]);

 return s
}
)
Run Code Online (Sandbox Code Playgroud)

javascript minify

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

有没有办法强制在C#中初始化静态字段?

请考虑以下代码:

class Program
{
    static Program() {
        Program.program1.Value = 5;
    }

    static List<Program> values = new List<Program>();
    int value;
    int Value
    {
        get { return value; }
        set { 
            this.value = value;
            Program.values.Add(this);
        }
    }

    static Program program1 = new Program { value = 1 };
    static Program program2 = new Program { value = 2 };
    static Program program3 = new Program { value = 3 };

    static void Main(string[] args)
    {
        if (Program.values.Count == 0) Console.WriteLine("Empty");
        foreach (var …
Run Code Online (Sandbox Code Playgroud)

c# static initialization

7
推荐指数
3
解决办法
4128
查看次数

是否可以列出创建的所有自定义事件?

我知道可以将事件监听器添加到我在Javascript中创建的自定义事件,如下所示:

window.addEventListener("MyCustomEvent", myFunction, false);
Run Code Online (Sandbox Code Playgroud)

但是......是否可以列出任何时刻存在的所有自定义事件?

无论事件是否存在,上面的行都会添加一个事件监听器,因此我无法指出事件是否存在.

javascript custom-events

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

Laravel4在生产服务器中丢失了会话

我正在检查用户是否登录或不是这样

Class LoginController extends BaseController {

    public function getIndex(){
        return View::make('login',array('eventname' => Request::segment(1)));
    }

    public function postIndex(){

        $xx = User::where('email','=',Input::get('email'))->where('event','=',$requestedevent)->first();
        $eventattempt = Input::get('event');

        if ($xx){

                if(Auth::attempt($userDetails)){
                    if(Auth::check()){
                        // return var_dump($xx->id);
                        Session::put('username',Auth::user()->name);
                        Session::put('userid',Auth::user()->id);
                        Session::put('event',Auth::user()->event);
                        return Redirect::to($eventattempt.'/form/page1');
                    }
                } else {
                    return Redirect::to($eventattempt.'/login')->with('login_errors',true);
                }

        } else {
            return Redirect::to($eventattempt.'/login')->with('login_errors',true);
        }


    }

}
Run Code Online (Sandbox Code Playgroud)

然后我在这样的Form控制器中做一个过滤器

<?php



Class FormController extends BaseController{



    public function __construct(){
        $this->beforeFilter('auth');
        $this->beforeFilter('eventcheck');


    }

  }
Run Code Online (Sandbox Code Playgroud)

而我的filters.php看起来像这样

/*
|--------------------------------------------------------------------------
| Application & Route Filters
|--------------------------------------------------------------------------
|
| Below you will find the "before" …
Run Code Online (Sandbox Code Playgroud)

php session-variables laravel-4.2

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

使用枚举作为字典键

我正在尝试为给定的枚举创建保证的查找。与之类似,对于枚举的每个键,在查找中应该只存在一个值。我想通过类型系统来保证这一点,以便在枚举扩展时不会忘记更新查找。我尝试了这个:

type EnumDictionary<T, U> = {
    [K in keyof T]: U;
};

enum Direction {
    Up,
    Down,
}

const lookup: EnumDictionary<Direction, number> = {
    [Direction.Up]: 1,
    [Direction.Down]: -1,
};
Run Code Online (Sandbox Code Playgroud)

但是我收到这个奇怪的错误:

输入'{[Direction.Up]:数字;[Direction.Down]:数字;}”不可分配给“方向”类型。

在我看来这很奇怪,因为它说的类型lookup应该是Direction而不是EnumDictionary<Direction, number>。我可以通过将lookup声明更改为以下内容来确认这一点:

const lookup: EnumDictionary<Direction, number> = Direction.Up;
Run Code Online (Sandbox Code Playgroud)

而且没有错误。

如何为枚举创建查找类型,以确保枚举的每个值都将导致其他类型的值?

TypeScript版本:3.2.1

enums dictionary typescript

6
推荐指数
2
解决办法
1328
查看次数