我正在从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"));
我有一个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) 我在发布时是否可以更改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.json
点lib/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
但它什么也没做.
是否可以像ES#或其他编程语言一样将依赖注入ES2015模块?如果我导入一个模块,我会为它创建一个硬依赖项,并且以后不能在运行时更改它.例如,我有以下JavaScript代码:
import Animal from './dog';
class Person {
feedAnimal() {
new Animal().feed();
}
}
Run Code Online (Sandbox Code Playgroud)
我正在导入狗模块.但是,如果我想把它改成猫呢?目前我必须手动修改第1行,但在某些情况下我希望它可以从外部进行配置,以便在某些情况下应该有一只猫,在某些其他条件下它应该是猫.所有可以通过经典依赖注入完成的事情.
javascript dependency-injection ecmascript-6 es6-module-loader
有没有一种方法可以对用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) 我正在使用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中没有任何反应.
那么这个解决方案是什么?忽略这条消息?我的意思是如果这种行为真的在官方承诺规范中,那么异步代码中的承诺对我来说并没有真正意义.
打字稿版本: 2.4.1
例如,我想从 npm 中使用一个名为awesome-lib
. 这个库已经附带了一个 TypeScript 类型定义,但这个已经过时并且有问题。图书馆的作者没有更新这个。
我试图在我自己的declarations.d.ts
项目中的文件中完全禁用该类型定义:
declare module 'awesome-lib';
Run Code Online (Sandbox Code Playgroud)
不幸的是,TypeScript首先读取库中的类型定义并抛出一些错误。所以我不可能为我的项目禁用/隐藏这个库。
有谁知道如何禁用一个特殊库的类型检查?
javascript ×2
android ×1
coffeescript ×1
ecmascript-6 ×1
es6-promise ×1
gwt ×1
java ×1
jestjs ×1
node-modules ×1
node.js ×1
npm ×1
oboe.js ×1
package ×1
path ×1
promise ×1
typescript ×1
utc ×1