小编Luc*_*aio的帖子

在jQuery.when中链多个"then"

我有一个像这样的功能:

function do_something() {
    // some code

    return $.when(foo, bar, baz).then(do_something_else);
}

function do_something_else(_foo, _bar, _baz) {
    // do something else

    return /* the original inputs */;
}
Run Code Online (Sandbox Code Playgroud)

因此,当有人使用时do_something,他们也可以链接更多回调,例如:

do_something().then(function(_foo_2, _bar_2, _baz_2) {
    console.log(_foo_2, _bar_2, _baz_2);
});
Run Code Online (Sandbox Code Playgroud)

问题是我不知道如何绕过原来的返回do_something_else来描述匿名函数.我不想收到列表,而是接收位置参数,所以"当foo"为do_something_else的_foo插入一些值,然后相同的值转到_foo_2.

我怎么能在JS中做到这一点?

javascript jquery jquery-deferred

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

当我在ssh上运行django runserver时,Vagrant没有转发

我用Python和Django创建了一个Vagrant Ubuntu(lucid32)框.我的想法是启动VM,使用它登录vagrant ssh,然后运行以下命令启动Django:

manage.py runserver
Run Code Online (Sandbox Code Playgroud)

默认为端口8000.问题是我无法从主机的浏览器访问Django服务器http://127.0.0.1:8000.我能做什么?

windows django virtualbox vagrant

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

Angular.js:未捕获错误,没有模块:myapp

我正在尝试一个angular.js项目.这是我的index.html:

<!doctype html>
<html ng-app="myapp">
<head>
    <meta charset="utf-8">
    <base href="{% url 'app' %}" />

    <title>Project</title>
</head>
<body>
    <div ng-view>
        <p>Loading...</p>
    </div>

    <script>
        var url = function(path) { return '{{ STATIC_URL }}' + path };
    </script>
    <script src="{{ STATIC_URL }}js/jquery-1.10.1.js"></script>
    <script src="{{ STATIC_URL }}js/angular.js"></script>
    <script src="{{ STATIC_URL }}js/project/app.js"></script>
    <script src="{{ STATIC_URL }}js/project/controllers.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

例如url 'app',头部只打印子路径/ app.这是我的app.js:

'use strict';

var app = angular.module('myapp', []);

app.config(['$routeProvider', function($router) {
    $router.when('/', {
        templateUrl: url('partials/foo.html'),
        controller: controllers.Foo
    });
}]);
Run Code Online (Sandbox Code Playgroud)

问题在于,每当我尝试运行它时,都会引发异常:Uncaught Error: No …

javascript angularjs

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

如何在Haskell应用程序中固定依赖项

我现在正在Haskell中编写一个todo.sh,以更好地理解IO monads的工作原理,并且我将使用cmdArgs来解析输入,就像在Python中使用argparse一样.

我的问题是,我如何固定cmdArgs的依赖关系,如pip的requirements.txt?

Django==1.5.1
South==0.7.6
Run Code Online (Sandbox Code Playgroud)

而且,可以在Hackage中分发我的包吗?

haskell functional-programming cabal

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

退出钩子适用于 Bash 和 ZSH

我需要创建一个脚本,它基本上设置一些环境变量,启动一个子 shell,并在退出时运行一些附加代码,作为钩子。它需要同时在 Bash 和 ZSH 上运行,我知道也许我应该维护两个不同的脚本。

我需要它的原因是创建某种引导脚本。例如,我创建了一个名为Bootstrap.sh的文件,其中包含两个函数startexit,当我运行脚本时,start应该调用 和 ,并激活一个新的子 shell。当子 shell 退出时,exit最终会调用 , 。例如:

# Bootstrap.sh
start() {
    export CUSTOM_VAR="hello world"
}

exit() {
    echo "byebye"
}
Run Code Online (Sandbox Code Playgroud)

$ bootstrap
$ # 找到“Bootstrap.sh”,加载它,然后调用“start”函数
(myenv) $ echo $CUSTOM_VAR
hello world
(myenv) $ exit
byebye # 这是我的退出钩子
$ # 回到“正常”shell

我正在使用这个脚本测试钩子,基于改进 Python 的virtualenv的建议。在此文件中,我尝试使用 trap (a) 和 TRAPEXIT(b),但这些都不起作用:

# (a), the "bash way", I think
my_hook() {
    echo …
Run Code Online (Sandbox Code Playgroud)

bash shell zsh

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

有没有更好的方法来使用cmake构建C项目?

我正在使用CMake开始一个新的C项目,所以我创建了一个非常类似于我在Python中使用的目录结构(我的"主要"语言).虽然它编译正确,但我不确定我是以正确的方式做到的.这是目前的结构:

.
??? CMakeLists.txt
??? dist
?   ??? # project will be built here, 'cmake ..'
??? extras
?   ??? CMakeLists.txt
?   ??? extra1
?   ?   ??? CMakeLists.txt
?   ?   ??? extra1.h
?   ?   ??? extra1.c
?   ??? extra2
?       ??? CMakeLists.txt
?       ??? extra2.h
?       ??? extra2.c
??? src
?   ??? CMakeLists.txt
?   ??? main.c
?   ??? module1.h
?   ??? module1.c
?   ??? module2.h
?   ??? module2.c
??? test
    ??? CMakeLists.txt
    ??? test_module1.c
    ??? test_module2.c
Run Code Online (Sandbox Code Playgroud)

由于所有文件都分布在多个目录中,因此我必须找到一种方法来查找存在的库extras和我需要测试的库src …

c cmake

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

_(下划线)变量的值在Python解释器中意外更改

我正在尝试用Python创建一个模块,允许我编写一个有效的句子map(_ + 2, range(10)),只是为了好玩,但有一个奇怪的行为,我不知道如何处理.我目前的实施是:

class EasyLambda(object):
    def __add__(self, other):
        return lambda val: val + other

_ = EasyLambda()
Run Code Online (Sandbox Code Playgroud)

每个操作员都有自己的功能.这是愚蠢的实现,我稍后会改进它以使事情成为_.lower() + '.html'可能.问题是,每当我调用一个魔术方法时,Python似乎用新返回的值替换self,在这种情况下这是一个lambda.

>>> from mymodule import _
>>> print _
<func.EasyLambda object at 0x2e4ae90>

>>> add2 = _ + 2
>>> print add2, _
<function <lambda> at 0x2e551b8> <func.EasyLambda object at 0x2e13e90>

>>> add2(4)
6

>>> print add2, _
<function <lambda> at 0x2e551b8> 6    # WTF?

>>> print _, type(_)
6 <type 'int'>

>>> _ + 4 …
Run Code Online (Sandbox Code Playgroud)

python metaprogramming magic-methods

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

在 node.js 中轻松打印当前包版本

我有一个 node.js 项目要在浏览器上运行,所以我有一个 Makefile,其中包含一些任务,这些任务将所有内容捆绑在一个文件中(使用browserify),然后将其缩小(uglify-js)。我决定使用 Makefile 而不是 Grunt 或其他,因为它很简单并且可以解决我的问题。

生成的文件是mylib.jsmylib.min.js,但我想要类似的东西mylib.1.0.1.js,版本来自我的package.json.

我需要一个 npm 命令来告诉我 package.json 中描述了什么版本,但我没有在文档中找到任何版本。有谁知道怎么获得吗?

javascript node.js npm

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

结帐源/ <branch>时如何知道我在git上的分支

我们有一个实际git fetch; git checkout origin/<branch>部署特定功能的脚本.我们这样做的原因是我们不想避免使用本地分支(它是测试服务器),因此脚本只需获取最新的更改并将其签入,然后重新加载服务器.

我们还生成一个日志,描述每个部署,通过电子邮件发送给某人和存档.有趣的是,我们也发送了部署的分支,但问题是当我们这样做时checkout origin/<branch>,我们正在改变一个独立的头.我用类似的问题读了一些答案,但没有那么具体.

有没有办法打印我在这种情况下的分支(当然,无论用户输入)?

git version-control

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