小编Lon*_*ick的帖子

将UTC转换为当前的区域设置时间

我正在从Web服务下载一些JSON数据.在这个JSON中,我有一些日期/时间值.UTC中的所有内容.如何解析此日期字符串,以便结果Date对象在当前语言环境中?

例如:服务器返回"2011-05-18 16:35:01",我的设备现在应显示"2011-05-18 18:35:01"(GMT +2)

我目前的代码:

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date myDate = simpleDateFormat.parse(rawQuestion.getString("AskDateTime"));

java android utc

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

在CellTable中禁用CheckboxCell

我有一个GWT CellTable<MyType>.此表包含应显示的行CheckBox.这CheckBox应根据getter进行检查或取消选中MyType,但应禁用,以便用户无法单击它.有人知道如何实施吗?

一些代码片段:

Column<MyType, Boolean> checkboxColumn = new Column<MyType, Boolean>(new CheckboxCell()) {
    @Override
    public Boolean getValue(MyType object) {
        return object.isItTrue();
    }
};
CellTable<MyType> cellTable = new CellTable<MyType>();
cellTable.addColumn(checkboxColumn, "Header title");
Run Code Online (Sandbox Code Playgroud)

gwt

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

在npm发布上更改根目录

我在发布时是否可以更改Node.js npm包的根目录?我所拥有的是:

??? lib
??? package.json
??? .npmignore
??? src
?   ??? index.js
?   ??? sub
?       ??? mymodule.js
??? test
Run Code Online (Sandbox Code Playgroud)

In /src是我的所有ES2015源代码.我将Babel引入我的/lib目录.将main在我的package.jsonlib/index.js.在那之后,我可以做一个npm publish(我.npmignore的设置src只会lib发布).现在我的包被部署到npmjs.com,在另一个包中我可以用它导入它import index from 'mypackage'.

到现在为止还挺好.但是,如果我想sub/mymodule.js直接导入怎么办?我得写import mymodule from 'mypackage/lib/sub/mymodule'.我真正想要的是import mymodule from 'mypackage/sub/mymodule'没有/lib/在我的道路上.

我怎样才能做到这一点?npm文档提到了我可以设置的directories.lib,package.json但似乎它将被完全忽略.我把它设置为./lib但它什么也没做.

path package node.js npm node-modules

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

将依赖项注入ES2015模块

是否可以像ES#或其他编程语言一样将依赖注入ES2015模块?如果我导入一个模块,我会为它创建一个硬依赖项,并且以后不能在运行时更改它.例如,我有以下JavaScript代码:

import Animal from './dog';

class Person {
  feedAnimal() {
    new Animal().feed();
  }
}
Run Code Online (Sandbox Code Playgroud)

我正在导入狗模块.但是,如果我想把它改成猫呢?目前我必须手动修改第1行,但在某些情况下我希望它可以从外部进行配置,以便在某些情况下应该有一只猫,在某些其他条件下它应该是猫.所有可以通过经典依赖注入完成的事情.

我知道有一些DI框架存在像,电解质,电线等可惜大多需要一些特殊的语法,并没有对由ES2015模块.

javascript dependency-injection ecmascript-6 es6-module-loader

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

用CoffeeScript编写的测试来进行开玩笑的代码覆盖

有没有一种方法可以对用CoffeeScript编写的单元测试运行Jest coverage工具?覆盖率报告始终告诉我100%的覆盖率。

jest --coverage

----------|----------|----------|----------|----------|----------------|
File      |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
----------|----------|----------|----------|----------|----------------|
----------|----------|----------|----------|----------|----------------|
All files |      100 |      100 |      100 |      100 |                |
----------|----------|----------|----------|----------|----------------|
Run Code Online (Sandbox Code Playgroud)

我已经使用以下Jest预处理程序将CoffeeScript转换为JavaScript

var coffee = require('coffee-script');

module.exports = {
  // CoffeeScript files can be .coffee or .litcoffee
  process: function(src, path) {
    if (coffee.helpers.isCoffee(path)) {
      return coffee.compile(src, {
        bare: true,
        literate: coffee.helpers.isLiterate(path)
      });
    }
    return src;
  }
};
Run Code Online (Sandbox Code Playgroud)

code-coverage coffeescript jestjs

5
推荐指数
0
解决办法
186
查看次数

异步承诺中未处理的承诺拒绝

我正在使用Oboe.js来解析一个非常大的JSON文件

const promises = [];
oboe('http://domain/my-file.js')
  .node('items.*', item => {
    // parseItem() returns a rejected Promise because of invalid JSON items
    promises.push(parseItem(item));
  })
  .done(() => {
    Promise.all(promises).then(() => {
      doSomething();
    });
  })
Run Code Online (Sandbox Code Playgroud)

但我的浏览器控制台充斥着Uncaught (in promise).如果你写一个setTimeout()类似的承诺,也会发生同样的情况

const promises = [];
setTimeout(() => {
  promises.push(Promise.reject());
}, 500);
// some time in the future
Promise.all(promises);
Run Code Online (Sandbox Code Playgroud)

真正奇怪的是:现代浏览器的行为有所不同.在Firefox Developer Edition中,一切都在没有错误消息的情况下运行,而在Chrome中,我充斥着它Uncaught (in promise).在Chrome中,如果您Promise.reject();没有捕获,您可以立即收到消息.在Firefox和Safari中没有任何反应.

那么这个解决方案是什么?忽略这条消息?我的意思是如果这种行为真的在官方承诺规范中,那么异步代码中的承诺对我来说并没有真正意义.

javascript promise es6-promise oboe.js

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

TypeScript:无法禁用一个特殊库的类型定义

打字稿版本: 2.4.1

例如,我想从 npm 中使用一个名为awesome-lib. 这个库已经附带了一个 TypeScript 类型定义,但这个已经过时并且有问题。图书馆的作者没有更新这个。

我试图在我自己的declarations.d.ts项目中的文件中完全禁用该类型定义:

declare module 'awesome-lib';
Run Code Online (Sandbox Code Playgroud)

不幸的是,TypeScript首先读取库中的类型定义并抛出一些错误。所以我不可能为我的项目禁用/隐藏这个库。

有谁知道如何禁用一个特殊库的类型检查?

typescript

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