小编Mar*_*tus的帖子

适用于GT,GTE,EQ,LT,LTE运营商

Java库中是否有Java枚举用于大于,大于或等于,等于,小于或等于,小于比较?

java

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

index.html更改时浏览器自动重新加载

webpack-dev-server在一个非常简单的设置中使用.我发现,即使服务器会自动触发一个浏览器重装当index.js文件发生更改,它并不会触发重新加载时index.html的变化.我怎样才能做到这一点?

这是我的设置:

的package.json

{
  "name": "html-reload",
  "version": "1.0.0",
  "description": "",
  "main": "src/index.js",
  "scripts": {
        "build": "node_modules/webpack/bin/webpack.js",
        "start": "webpack-dev-server --host 0.0.0.0 --port 8383 --content-base dist"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^1.12.14",
    "webpack-dev-server": "^1.14.1"
  }
}
Run Code Online (Sandbox Code Playgroud)

webpack.config.js

module.exports = {
    entry: './src/index.js',
    output: {
        path: 'dist',
        filename: 'bundle.js'
    }
};
Run Code Online (Sandbox Code Playgroud)

我启动了webpack-dev-serverwith:npm run start并将浏览器指向:

http://localhost:8383/webpack-dev-server/index.html
Run Code Online (Sandbox Code Playgroud)

我所做的每一项更改都会src/index.js在浏览器中自动刷新,但我所做的更改并非如此dist/index.html.

webpack-dev-server

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

为什么不为表单反应列表onReset事件?

React不会onReset表单事件中列出.

无论如何,React 0.14 onReset显然可用于表格,实际上是一个SyntheticEvent.

例如以下代码:

return React.createElement('form', {
       onSubmit: this.addContact,
       onReset: function(se) {
            console.log('form reset: '+se.constructor.name);
       }}
       , ....
Run Code Online (Sandbox Code Playgroud)

打印:

form reset: SyntheticEvent
Run Code Online (Sandbox Code Playgroud)

在控制台上.这是文档中的遗漏还是我没有找到正确的地方或误解了什么?

reactjs

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

箭头函数:如何指示解构中不需要的参数

有没有办法在箭头函数参数中指示不需要的参数(以及在解构过程中)?

_我在箭头函数中使用指示不需要的参数的人为案例:

import _ from 'lodash';

const m = [];
m.push({k: 1, v: 'a'});
m.push({k: 2, v: 'b'});
m.push({k: 3, v: 'c'});

const bExists = _.filter(m, ( {_,v}, _1, _2)=>{
    return v==='b';
}).length > 0;
Run Code Online (Sandbox Code Playgroud)

对上面代码的两个抱怨:

  1. _(用于 F# 等语言)与 lodash 导入相同。不是语法错误,但仍然令人困惑
  2. 随后_必须重命名为_1_2否则会得到:

    SyntaxError:es6/app.js:严格模式下参数名称冲突

我可以简单地省略_1_2参数,但这只是因为在这个特定的示例中,不需要的参数出现在参数列表的末尾。

上述第一个抱怨显然可以通过使用其他名称来解决,但第二个仍然有效(无论采用什么名称作为约定,都必须在后续不必要的争论中被破坏)。

那么,是否有语言支持来指示箭头函数中未使用的参数或(如果失败)对此建立的约定?

javascript ecmascript-6

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

神秘的鼠标事件关闭了jQuery UI对话框

这显然是一个SSCCE.

所以我们的任务是编写导弹发射控制系统的前端.我们选择Spartan布局,因为这是非常严重的:只需一个文本输入框和一个输入代码的按钮:

在此输入图像描述

为安全起见,点击"确定"按钮后,我们将显示一个对话框,要求用户确认:

在此输入图像描述

作为可用性画龙点睛,我们为Enter按钮添加了一个按键监听器,这也会导致单击"确定"按钮(使用$.trigger()).

不幸的是,确认对话框仅在用户点击"确定"按钮时显示,但在点击时不显示Enter.当我们点击Enter对话框时根本没有出现.

最糟糕的是,在添加一些调试消息后,看起来对话框确实显示了几分之一毫秒,然后由于某种原因点击了"Yeap"按钮.所以当Enter被击中时,立即确认导弹发射!

小提琴这里.

代码如下:

function inputKeyListener(evt) {
  console.log('key listener - triggered key code is: ' + evt.keyCode);
  if (evt.keyCode === $.ui.keyCode.ENTER) {
    evt.stopPropagation();
    $('#missile-launch-button').click(); // Directly calling confirm() doesn't work either
  }
}

function missileLaunchButtonClickHandler(e) {
  e.stopPropagation();
  confirm();
}

function confirm() {
  var launchCode = $('#missile-launch-code-input').val();
  const dialog = $('#missile-launch-confirmation-modal');
  dialog.dialog({
    closeOnEscape: false,
    dialogClass: 'no-close',
    open: function(event, ui) {
      console.log('confirm :: open …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jquery-ui jquery-ui-dialog

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

创建一个通用类列表

我有一个实用程序方法,可以从某些对象中创建一个元素列表:

public static final <T> List<T> list(T t) {
    final List<T> rv = new ArrayList<>();
    rv.add(t);
    return rv;
}
Run Code Online (Sandbox Code Playgroud)

我也有一个接受type参数的方法List<Class<?>>。因此,我必须创建该类型的对象。这是我尝试做的事情:

final Class<?> aClass = Integer.class;
final List<Class<?>> trivialListOfClasses = list(aClass);
Run Code Online (Sandbox Code Playgroud)

……这失败了:

[javac] /some/path/Foo.java:41: error: incompatible types
[javac]             final List<Class<?>> trivialListOfClasses = list(aClass);
[javac]                                                                  ^
[javac]   required: List<Class<?>>
[javac]   found:    List<Class<CAP#1>>
[javac]   where CAP#1 is a fresh type-variable:
[javac]     CAP#1 extends Object from capture of ?
[javac] 1 error
Run Code Online (Sandbox Code Playgroud)

完成上述任务的正确方法是什么?我了解有关Java泛型不变的部分,但是到底发生了什么?

java generics java-7

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

eslint 失败,无法读取配置文件:/some/path/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended

我正在按照说明从这里设置 ESLint 。

ESLint 失败并显示以下消息:

$ npm run lint

> IACS@1.0.0 lint /some/path/sscce-typescript-react-eslint
> eslint '*/**/*.{js,ts,tsx}' --quiet --fix

Error: Cannot read config file: /some/path/sscce-typescript-react- 
eslint/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended
Error: ENOENT: no such file or directory, open '/some/path/sscce-typescript-react- 
eslint/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended'
Referenced from: /some/path/sscce-typescript-react-eslint/node_modules/@typescript- 
eslint/eslint-plugin/dist/index.js
Referenced from: /some/path/sscce-typescript-react-eslint/.eslintrc.js
Run Code Online (Sandbox Code Playgroud)

确实存在具有以下名称的文件:

/some/path/sscce-typescript-react-eslint/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended.js
Run Code Online (Sandbox Code Playgroud)

...但显然 ESLint 没有预料到*.js扩展名并且找不到该文件。

这个 github repo 中找到了最短的独立具体示例。

为了本网站的完整性,我package.json是:

{
  "name": "IACS",
  "version": "1.0.0",
  "description": "react, typescript",
  "main": "index.js",
  "scripts": {
    "dev": "webpack-dev-server --hot --inline --devtool source-map --progress --colors …
Run Code Online (Sandbox Code Playgroud)

typescript eslint webpack

3
推荐指数
2
解决办法
3918
查看次数

生成*.cma档案的签名和/或与OCaml档案文件链接的更简单方法

以同样的方式使用:

ocamlc -i foo.ml  
Run Code Online (Sandbox Code Playgroud)

foo.ml生成默认签名是否有办法从编译文件(*.cmo)或档案(*.cma)生成签名?

我的用例是我有一个我希望链接的存档abcd.cma,包含许多模块(比如模块a,b,cd),我不想打扰多个*.mli和*. cmi我的Makefile需要处理来编译和链接用户端代码(使用库).例如,我说文件uses_a.ml仅使用abcd.cma存档中找到模块.我的理解是,要链接abcd.cma模块,我必须经历以下动作:

ocamlc -i a.ml > a.mli
ocamlc -c a.mli
ocamlc -c uses_a.ml  
ocamlc abcd.cma uses_a.cmo
Run Code Online (Sandbox Code Playgroud)

如果我无法访问来源或签名,这似乎太复杂或不可能.鉴于我在最后一个命令中向编译器提供了整个存档,我不清楚为什么我必须通过编译(或生成 - 如果我有权访问源)的模式I模块的特定签名文件的仪式我正在使用.该工具可以将最后一个命令解释为使用存档中存在的任何模块的"默认"签名的邀请,该线路上的后续模块使用该签名.顺便说一句,我现在不想使用自动Makefile生成工具.

ocaml

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

git push :: 在推送之前估计大概的推送大小

有没有办法在实际推送之前估计git 推送的大小?

我的用例是,大的推送大小是一个很好的指标,表明我可能无意中在暂存区域中包含了一些二进制文件(因为我通常使用git add . -A添加)。我知道我可以执行git add 。-A -n通过grep管道传输要注意的文件扩展名,但是可以说,只是为了估计大小而进行一次推演,可以提供一些额外的保证。

git version-control

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

JPA/Hibernate删除"子"实体

我有两个实体类AB,它们分别以双向一对多关系存在.

A.java:

@OneToMany(cascade = CascadeType.ALL, mappedBy = "aId",
           fetch=FetchType.EAGER, orphanRemoval=true)
private Set<B> bCollection = new LinkedHashSet<B>();
Run Code Online (Sandbox Code Playgroud)

B.java

  @JoinColumn(name = "A_ID", referencedColumnName = "ID", nullable=false)
  @ManyToOne(optional = false)   
  private A aId;
Run Code Online (Sandbox Code Playgroud)

在一个简单的控制台应用程序中,我从数据库中获取一个特定的A行,并尝试删除其中一个详细的B行(随机),但JPA/Hibernate不仅删除了行 - 它甚至没有向该行发出任何DELETE语句数据库.删除B行的唯一方法是从A.java的集合(LinkedHashSet)中删除相应的实体.所以,虽然我有一个解决方法,但我想了解为什么以下代码失败,并且也悄然失败!

public static void main(String[] args) {
    EntityManagerFactory entityManagerFactory =  Persistence.createEntityManagerFactory("testjpa");
    EntityManager em = entityManagerFactory.createEntityManager();
    EntityTransaction entityTransaction = em.getTransaction();
    entityTransaction.begin();
    A a = em.find(A.class, 1);
    B b = getARandomChildOfA(a);
    em.remove(em.merge(b)); …
Run Code Online (Sandbox Code Playgroud)

hibernate jpa

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