小编Dan*_*nce的帖子

获取Clojure参数列表

我想要的东西给了我传递给函数的实际值的序列,类似于javascript函数中的参数值.

我知道我可以使用获取整个函数参数列表

(defn fx [& args]
 args)

<= (fx {:a 1} 2)
=> ({:a 1} 2)
Run Code Online (Sandbox Code Playgroud)

但这消除了我的功能上的arity.我希望有类似的东西

(defn fx [{:keys [a]} b]
 (MAGIC_FUNCTION_THAT_RETURNS_THE_ARGS_VALUES))

<= (fx {:a 1} 2)
=> ({:a 1} 2)
Run Code Online (Sandbox Code Playgroud)

是否有可能获得传递给函数的原始值序列?

clojure

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

如何使用Youtube Javascript API获取youtube用户的观看历史记录?

我可以使用Youtube Javascript API获取用户的搜索结果,播放列表.

如何使用Youtube Javascript API获取用户观看的历史记录???

是否有任何Javascript API来获取Youtube观看用户的历史记录?

javascript youtube-api youtube-javascript-api youtube-data-api

9
推荐指数
2
解决办法
6749
查看次数

定位设备(相交圆)

我有一系列的观点,代表一个房间内的移动设备.以前我系统地从每个发出一个ping并记录它到达其他人的时间来计算距离.

这是一个示例网络的简单图表. 简单的网络

底部A节点应该是D而不是

记录距离后,我在哈希中有距离信息.

A = {B: 2, C: 1, D: 3}
B = {A: 2, C: 2, D: 2}
C = {A: 1, B: 2, D: 2}
D = {A: 3, B: 2, C: 2}
Run Code Online (Sandbox Code Playgroud)

我的数学是生锈的,但我觉得我应该能够使用这些值作为相应的绘制圆,然后与圆相交以计算节点的相对图.

每次我尝试这样做时,我都会从根节点(在本例中为A)周围绘制一系列圆圈开始,看起来像这样:

在此输入图像描述

我知道其他节点必须位于我在A周围绘制的线上,但是无法定位它们,您如何绘制它们的距离以便可以与圆相交并创建图形?

javascript c java algorithm math

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

反应:对反应组分的道具数量是否存在可观的限制

有时我的组件具有大量属性.

这有什么固有的问题吗?

例如

render() {

  const { create, update, categories, locations, sectors, workTypes, organisation } = this.props; // eslint-disable-line no-shadow

  return (
    <div className="job-container">
      <JobForm
        organisationId={organisation.id}
        userId={user.id}
        action={action}
        create={create}
        update={update}
        categories={categories}
        locations={locations}
        sectors={sectors}
        workTypes={workTypes}
      />
    </div>
  );
} 
Run Code Online (Sandbox Code Playgroud)

什么是最佳做法?

javascript components flux reactjs redux

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

Clojure不需要cljc文件

我需要在我的Clojure(Garden)和我的ClojureScript(Reagent)之间共享一个命名空间.

目前项目文件夹如下所示:

src/
  clj/
    name/
      css.clj
  cljs/
    name/
      core.cljs
  cljc/
    name/
      config.cljc
Run Code Online (Sandbox Code Playgroud)

config.cljc文件具有以下命名空间:(ns name.config).

我试图从内部clj/name/css.clj用require 引用这个命名空间.

(ns name.css
  (:require [name.config :as config]))
Run Code Online (Sandbox Code Playgroud)

但是,这会导致Garden出现编译错误.

引起:java.io.FileNotFoundException:无法在类路径上找到name/config__init.class或name/config.clj.

我想它甚至都没有检查cljc文件.

我添加"src/cljc":source-paths矢量中project.clj,:garden :builds但即使重新启动构建过程后,我也得到相同的错误.

我在Clojure 1.7.0和1.8.0上看到了这种行为.

值得一提的是,它在ClojureScript中没有问题(使用Figwheel处理构建).我可以毫无问题地要求并使用新的命名空间.

看起来我必须遗漏一些非常简单的东西,因为文件周围的文档都.cljc没有提到需要它们.

clojure clojurescript

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

部署docker-compose容器

我正在尝试部署一个使用docker-compose构建的应用程序,但感觉我的方向完全错误.

  1. 我有一切在本地工作 - docker-compose up使用适当的网络和主机启动我的应用程序.
  2. 我希望能够在生产机器上运行相同的容器和网络配置,只需使用不同的.env文件.

我当前的工作流程看起来像这样:

docker save [web image] [db image] > containers.tar
zip deploy.zip containers.tar docker-compose.yml
rsync deploy.zip user@server

ssh user@server
unzip deploy.zip ./
docker load -i containers.tar

docker-compose up
Run Code Online (Sandbox Code Playgroud)

此时,我希望能够docker-compose up在他们到达时再次运行,但是尝试按照docker-compose.yml文件重建容器.

我有一种明显的感觉,我错过了一些东西.我应该通过我的完整应用程序发货,然后在服务器上构建图像吗?如果从注册表中存储/加载图像,您将如何启动组合容器?

docker docker-compose

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

我怎样才能在一个可疑的div中得到插入符号?

当我点击鼠标时,我试图从该位置的内容可编辑div中提取单个单词.例如:

Lorem ipsum dolor sit amet, cons|ectetur adipiscing elit. Cras vestibulum gravida
tincidunt. Proin justo dolor, iaculis vulputate eleifend et, facilisis eu erat.*
Run Code Online (Sandbox Code Playgroud)

使用| 代表插入符号,函数应返回" consectetur ".

我的尝试:

window.onload = function () {
        document.getElementById("text-editor").onclick = function () {
            var caretPos = 0, containerEl = null, sel, range;
            if (window.getSelection) {
                sel = window.getSelection();
                if (sel.rangeCount) {
                    range = sel.getRangeAt(0);
                    if (range.commonAncestorContainer.parentNode == this) {
                        caretPos = range.endOffset;
                    }
                }
            } else if (document.selection && document.selection.createRange) {
                range = document.selection.createRange(); …
Run Code Online (Sandbox Code Playgroud)

html javascript string

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

如何在没有抗锯齿的情况下调整画布大小?

更新

这肯定与我如何重新缩放画布有关.如果我将相同的场景绘制到画布上并且我不改变它的宽度和高度以填充屏幕,它可以完美地工作.

工作

为全屏环境调整画布大小的正确方法是什么?


我正在编写一个用于画布的游戏引擎,并且我遇到了图像被放大和混淆的问题,我通过几个答案为有类似问题的人阅读.我修改了我的代码,以便在我的每个画布上启用以下设置.

context.webkitImageSmoothingEnabled = false;                                                                                
context.mozImageSmoothingEnabled = false;                                                                                   
context.imageSmoothingEnabled = false;
Run Code Online (Sandbox Code Playgroud)

为了确保,我还包括了这些规则的CSS替代方案.

canvas {
  image-rendering: optimizeSpeed;             // Older versions of FF
  image-rendering: -moz-crisp-edges;          // FF 6.0+
  image-rendering: -webkit-optimize-contrast; // Webkit (non standard naming)
  image-rendering: -o-crisp-edges;            // OS X & Windows Opera (12.02+)
  image-rendering: crisp-edges;               // Possible future browsers.
  -ms-interpolation-mode: nearest-neighbor;   // IE (non standard naming)
}
Run Code Online (Sandbox Code Playgroud)

这是我试图绘制的原始图像之一的示例.

字符

然后我从16x16升级到64x64,而不是看起来像使用最近邻插值,它呈现这样.

实际结果

我在Chrome和Firefox中获得了相同的结果.我也不想做一个预处理步骤来升级图像.它必须是可能的,因为这个演示对我有用.

另外要提的是,引擎设计用于全屏,所以我手动保持画布的大小与此功能.

fill-screen = (canvas) ->
  canvas.width = document.body.clientWidth
  canvas.height = document.body.clientHeight
Run Code Online (Sandbox Code Playgroud)

画布绝对位于其父级的左上角,除此之外,没有非浏览器CSS规则对它们进行操作.

也许我正在做一些愚蠢的事情,但我已经看了好几年了,而且我已经没有接近了.我正在创建画布和上下文的文件的代码在这里:https://gist.github.com/code-curve/9273248

javascript css html5 canvas livescript

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

有没有办法检查两个数组是否具有相同的元素?

假设我有2个阵列

firstArray  = [1, 2, 3, 4, 5];
secondArray = [5, 4, 3, 2, 1];
Run Code Online (Sandbox Code Playgroud)

我想知道它们是否包含相同的元素,而顺序并不重要.我知道我可以编写一个函数来对它们进行排序,然后循环遍历它们进行检查,但是有没有预先构建的函数呢?(不仅是Vanilla JS,其他javascript库也没关系)

javascript arrays

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

使用webpack和babel与父项目目录中的文件

我有一个项目设立这样,我想需要file-a.jsfile-b.js.

project-name/
  node_modules/
  src/
    file-a.js
  tools/
    tool-name/
      node_modules/
      src/
        file-b.js
      webpack.config.js
      package.json
  package.json
Run Code Online (Sandbox Code Playgroud)

我的webpack1.13.0配置正常工作,直到我babel-loaderbabel-preset-es20156.6.0 添加6.2.4 .然后我开始收到错误消息.

/home/dan/dev/dan/project-name/src/file-a.js中的错误模块构建失败:错误:无法找到相对于目录"/ home/dan/dev/dan/project的预设"es2015" -name/src目录"

现在我有预感到这种情况正在发生,因为它正在寻找babel-preset-es2015上层package.json.我可以通过在该级别安装它来消除此错误,但随后我收到关于babel模块不存在的类似消息.

我已经尝试了各种各样的东西,将上层src目录符号链接到内部项目中,使用resolve.rootresolve.alias尝试手动解析没有嵌套路径的文件夹.用于context将项目根目录设置为外部文件夹,但它仍然选错了node_modules.

如何强制webpack使用正确的node_modules文件夹?

javascript webpack babeljs

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