小编Ale*_*der的帖子

如何在 JSDoc 中指定类的类型(而不是其实例)

我有课:

class Model { 
  static get schema() { }   // static property 'schema'
}
class CustomModel_1 extends Model { }
. . .
class CustomModel_N extends Model { }
Run Code Online (Sandbox Code Playgroud)

我想声明一个带有指定模型类型(不是此类型的实例)的参数的新函数:

/**
* @param {Model} ModelType  <== it is a wrong type because it is an instance of Model
*/
function doSomething(ModelType) {
  const schema = ModelType.schema // <== WebStorm emphasizes 'schema'
}
Run Code Online (Sandbox Code Playgroud)

我如何在 JSDoc 中指定它?表达式{Model}无效,因为它指定了模型的实例。

javascript jsdoc

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

PostgreSQL:唯一约束或唯一索引

如果列包含唯一约束并且我想按此列快速搜索,我应该创建唯一索引吗?

例如,我有一个userslogin应该是唯一的表。我需要按login列快速搜索用户。

这是最好的方法:

  1. 创建一个唯一约束(它创建内部唯一索引 - 是否在选择查询中使用WHERE login = 'something'?)
  2. 创建唯一索引
  3. 创建唯一索引和唯一约束(索引重复内部索引?)

第二种情况login对于未锁定的用户是唯一的(列locked = false)。Postgres 不支持部分条件。我应该创建唯一的条件索引和部分索引还是仅部分索引就足够了?

还有一个问题:我应该为带有外键的列创建新索引吗?例如:users.employee_id涉及到employees.id,我应该employee为优化查询在列上创建索引SELECT * FROM users WHERE employee_id = ....吗?优化引擎何时使用内部索引,何时不使用?

sql postgresql foreign-keys unique-index unique-constraint

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

为什么SPAN的高度超过其字体大小

我不明白为什么span元素的高度超过其font-size(margin和padding = 0):JSFiddle示例

<head>
    <style>
        .analized-element {
            font-size: 20px;
            font-family: "Lucida Console", "Lucida Grande", monospace;
        }
    </style>

</head>
<body>
    <span class="analized-element">Test message</span>
</body>
Run Code Online (Sandbox Code Playgroud)

此问题仅在Mac中存在:

== analized-element =====
border-size: 0 0 0 0
padding: 0 0 0 0
font-size: 20px
offsetHeight: 23px
=========================
Run Code Online (Sandbox Code Playgroud)

我们如何看到还有3个额外的像素。Windows中的相同示例:

== analized-element =====
border-size: 0 0 0 0
padding: 0 0 0 0
font-size: 20px
offsetHeight: 20px
=========================
Run Code Online (Sandbox Code Playgroud)

跨度的高度等于其字体大小。

html css

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

来自另一个命名空间的友元函数

/** module.h */
#pragma once

class A {
  friend void helpers::logValue(const A &);
  int _val;

public:
  A() {}
};

namespace helpers {
  static void logValue(const A &a) {
    std::cout << a._val;  // <== ERROR: '_val' is not accessible
  }
}
Run Code Online (Sandbox Code Playgroud)

如何在另一个命名空间中声明友元函数?

c++ friend-function

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