我正在尝试为Clojurescript设置一个环境.我遇到的问题是不知道如何设置它以便我可以从emacs连接到Clojurescript Browser REPL,因此我可以直接从编辑器评估表单并将其显示在浏览器中.
我试过的事情:
我尝试使用Cemerick的piggieback并搭载nREPL.我真的不知道如何从文档中配置它.在弄清楚我必须在项目文件夹的根目录中创建一个index.html文件后,我才能使它工作.除了服务器不提供我的资产.
我尝试使用Clojurescript wiki中的bash脚本设置inferior-lisp.但是,每当我尝试运行劣质lisp程序时,我都会遇到"错误的类型参数:stringp,nil".
这是我理想的工作流程:
我有一个项目文件夹/ resources/public文件夹,其中包含我的资产和html文件.我可以通过响铃或使用python的简单http服务器启动一个以某种方式提供这些文件的Web服务器.我可以从emacs连接到REPL并将表单评估到其中.
我正在为Ring编写一些中间件,我真的很困惑为什么我必须颠倒中间件的顺序.
我找到了这篇博文,但它没有解释为什么我要扭转它.
以下是博客文章的快速摘录:
(def app
(wrap-keyword-params (wrap-params my-handler)))
Run Code Online (Sandbox Code Playgroud)
答复是:
{; Trimmed for brevity
:params {"my_param" "54"}}
Run Code Online (Sandbox Code Playgroud)
请注意,没有调用wrap关键字params,因为params hash还不存在.但是当你颠倒中间件的顺序时:
(def app
(wrap-params (wrap-keyword-params my-handler)))
{; Trimmed for brevity
:params {:my_param "54"}}
Run Code Online (Sandbox Code Playgroud)
有用.
有人可以解释为什么你必须颠倒中间件的顺序?
我是一个Rails开发人员在Clojure中弄湿我的脚.我正在尝试用ERB做一些非常简单的事情,但我无法在生活中把它弄清楚.
假设我在layout.html中有一个简单的网站布局文件:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我有这些片段,例如header.html和footer.html以及这条简单的路线.
(deftemplate layout "layout.html" [])
(defroutes home-routes
(GET "/" [] layout))
Run Code Online (Sandbox Code Playgroud)
如果请求转到"/",我怎样才能改变布局并将页眉和页脚片段插入其中?
可能重复:
Java - 何时使用'this'关键字
一些开发人员喜欢在引用对象的方法和属性时总是使用"this",即使不需要它也是如此.这是一个非常简单的例子:
public class Foo {
private String id;
public Foo() {
this.id = "123456789";
}
}
Run Code Online (Sandbox Code Playgroud)
总是使用"这个"或仅在必要时才更清楚吗?在任何情况下你应该经常使用它吗?
我在Capistrano 3中遇到这个奇怪的问题。除非我删除服务器上我的应用程序文件夹中的repo文件夹,否则它所部署的代码永远不会更新。如果删除repo文件夹并进行部署,它将更新代码。
# config valid only for Capistrano 3.1
lock '3.1.0'
set :application, 'APP_NAME'
set :repo_url, 'REPO'
# Default branch is :master
# ask :branch, proc { `git rev-parse --abbrev-ref HEAD`.chomp }
# Default deploy_to directory is /var/www/my_app
set :deploy_to, '/home/deployer/apps/APP_NAME'
# Default value for :scm is :git
set :scm, :git
set :branch, "master"
# Default value for :format is :pretty
set :format, :pretty
# Default value for :log_level is :debug
set :log_level, :info
# Default value for :pty is …Run Code Online (Sandbox Code Playgroud) 我正在阅读c ++ Primer,这个代码片段出现了,我想知道sizeof(char*)做了什么,为什么它如此重要?
char *words[] = {"stately", "plump", "buck", "mulligan"};
// calculate how many elements in words
size_t words_size = sizeof(words)/sizeof(char *);
// use entire array to initialize words2
list<string> words2(words, words + words_size);
Run Code Online (Sandbox Code Playgroud)
提前致谢.
另一个快速问题,我有这个代码:
string sa[6] = {
"Fort Sumter", "Manassas", "Perryville",
"Vicksburg", "Meridian", "Chancellorsville" };
vector<string> svec(sa, sa+6);
for (vector<string>::iterator iter = svec.begin(); iter != svec.end(); iter++)
{
std::cout << *iter << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
为什么当我执行svec(sa,sa + 7)时,代码可以工作,但是在最后一个单词之后打印出一个空行,当我执行sa + 8而不是崩溃时?因为字符串数组只有6个元素大,不应该在sa + 7时崩溃吗?
谢谢.