小编dag*_*da1的帖子

模式匹配或多态分派是否可用作clojure中的条件结构?

在静态语言中,我可以用多态替换条件.

在像erlang这样的语言中,我可以使用模式匹配而不是if else.

我在clojure中可以使用什么?

clojure

4
推荐指数
2
解决办法
653
查看次数

minitest - 将任何参数传递给期望

我有以下代码用于模拟对类方法的调用:

def test_calls_update_profile_job_for_a_lead
  input = ContactInput.new valid_attributes

  mock = MiniTest::Mock.new

  use_case = CreateContact.new user, input, mock

  mock.expect(:perform_async, nil, [user.id, 1, ::Contact])

  use_case.run!

  assert mock.verify
end
Run Code Online (Sandbox Code Playgroud)

问题是我必须传递具体的价值 -

[user.id,1,:: Contact]

使测试通过.

有没有办法我不必指定确切的值,或者至少约束参数是什么.我不想检查确切的参数,我只是想确保调用该方法.

ruby minitest

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

使用d3.js将x轴移动到图表上的坐标(0,0)

您可以在页面上看到我想要实现的示例.

我用这段代码构造了负轴和正轴:

this.svg = d3.select(el).append("svg")
      .attr("width", width + margin.left + margin.right)
      .attr("height", height + margin.top + margin.bottom)
      .append("g")
      .attr("transform", "translate(" + margin.left + "," + margin.top + ")");

this.xScale = d3.scale.linear()
      .range([0, width]);

this.yScale = d3.scale.linear()
      .range([height, 0]);

const xAxis = d3.svg.axis()
        .scale(this.xScale);

const yAxis = d3.svg.axis()
        .orient('left')
        .scale(this.yScale);

const data = this.getDataFromProps(this.props.expression);

this.xScale.domain(d3.extent(data, function (d) {return d.x;}));
this.yScale.domain(d3.extent(data, function (d) {return d.y;}));

this.svg.append('g')
  .attr('class', 'axis')
  .attr('transform', 'translate(0,' + height + ')')
  .call(xAxis);

this.svg.append('g')
  .attr('class', 'axis')
  .attr('transform', 'translate(' …
Run Code Online (Sandbox Code Playgroud)

d3.js

4
推荐指数
2
解决办法
5476
查看次数

emacs 无法在 Windows 上获取我的 init.el 文件

我的 emacs.d 文件夹位于:

C:\Users\<loggedin_user>\AppData\Roaming\.emacs.d
Run Code Online (Sandbox Code Playgroud)

在这个文件夹中,我有 init.el 文件,但 emacs 没有拾取它。

我还缺少另一个步骤吗?我需要设置环境变量还是其他什么?

当我进入时C-x d ~/ RET我最终在

C:\Users\<loggedin_user>\AppData\Roaming\
Run Code Online (Sandbox Code Playgroud)

如果我将 init.el 文件移到那里,它仍然没有被拾取。我在文件中有一个故意的错误,该错误不会导致 emacs 在打开时崩溃。

emacs

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

emacs projectile - 在目录中显示"你不在项目中"

我刚刚创建了一个新的javascript文件夹.

结构是:

.gitignore
README.md
build
node_modules
package.json
src
webpack.config.js
Run Code Online (Sandbox Code Playgroud)

但是当我尝试找到一个文件时C-c p f,我会在状态栏中收到一条消息

你不是在一个项目中

我有其他项目具有相同的结构,工作正常,所以我不知道发生了什么.

emacs projectile

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

只需要从必需的commonjs模块中进行特定导出

在es6中,我可以这样做:

const { findIndex, last } from 'lodash';
Run Code Online (Sandbox Code Playgroud)

我可以在commonjs中使用require做同样的事情吗?

commonjs node.js

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

使用loopback email数据源发送带附件的电子邮件

是否可以使用loopback email数据源发送附件?

我在源文档中看到的只有以下字段:

  • @property {String}到电子邮件收件人.需要.
  • 来自电子邮件发件人地址的@property {String}.需要.
  • @property {String} subject电子邮件主题字符串.需要.
  • @property {String} text电子邮件的文本正文.
  • @property {String} html电子邮件的HTML正文.

nodemailer loopbackjs

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

组件或元素的正确 PropTypes 是什么

我正在创建一个组件,我希望元素类型是可配置的。

const Col = ({ containerElement, children }) => {
  return (
    <containerElement>
      {children}
    </containerElement>
  );
};

Col.defaultProps = {
  containerElement: 'div'
};
Run Code Online (Sandbox Code Playgroud)

因此容器元素可以是上面的 defaultProps 中的元素,也可以是一个组件。

<Col containerElement={<MyComponent} />
Run Code Online (Sandbox Code Playgroud)

我无法propTypes验证,我已经尝试过:

Col.propTypes = {
  className: PropTypes.string,
  containerElement: PropTypes.oneOf([
    PropTypes.string,
    PropTypes.element
  ]),
Run Code Online (Sandbox Code Playgroud)

但它无法正确验证。

警告:失败的 propType:提供给componentClass的值无效,divCol

reactjs

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

如何更改 Gatsby 博客文章页面的生成路径?

默认情况下,我的 Gatsby 网址就像 2018-09-06-hexagon

有什么办法可以让他们变成/blog/2018/09/06/hexagon

这是我的gatsby-node.js文件的相关部分:

exports.createPages = ({ graphql, actions }) => {
  const { createPage } = actions

  return new Promise((resolve, reject) => {
    const blogPost = path.resolve('./src/templates/blog-post.js')
    resolve(
      graphql(
        `
          {
            allMarkdownRemark(
              sort: { fields: [frontmatter___date], order: DESC }
              limit: 1000
            ) {
              edges {
                node {
                  fields {
                    slug
                  }
                  frontmatter {
                    title
                  }
                }
              }
            }
          }
        `
      ).then(result => {
        if (result.errors) {
          console.log(result.errors)
          reject(result.errors)
        }


        // Create blog posts …
Run Code Online (Sandbox Code Playgroud)

gatsby

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

未在svg上指定宽度和高度时,使用viewbox和keepaspect比率的自适应svg

我有一个很大的svg图像,我希望它在不同情况下都能很好地缩放(请参见代码段)。

我最初使用的是svg 的widthand height属性,并且每次屏幕调整大小时都要设置这些值。

然后,我发现了视图框。

我不明白的是,如果没有svg width和height属性,该如何设置viewBox的width和height参数。

我有这个svg文件

document.addEventListener("DOMContentLoaded",function(){
  var container = document.querySelector('.chart');

  container.addEventListener('click', popOut, false)
});

function popOut() {
  var container = document.querySelector('.chart');

  if (container.className.split(/\s+/).indexOf("popper") === -1) {
container.classList.add('popper');
  } 

  var svg = document.querySelector('svg');
}
Run Code Online (Sandbox Code Playgroud)
html {
  min-height: 100%;
  height: 100%;
  margin: 0;
}

div {
  border: 1px solid gray;
}

body {
  height: 100%;
  font-size: 20px;
}

path {
  stroke: #000;
}

.container {
  display: flex;
  flex-direction: column;
  flex: 1;
  height: 100%;
}

.container>div { …
Run Code Online (Sandbox Code Playgroud)

html css svg

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

标签 统计

emacs ×2

clojure ×1

commonjs ×1

css ×1

d3.js ×1

gatsby ×1

html ×1

loopbackjs ×1

minitest ×1

node.js ×1

nodemailer ×1

projectile ×1

reactjs ×1

ruby ×1

svg ×1