关于使用 google-pubsub 的主题名称的最佳实践是什么。
如果我有论文事件:
关于主题名称的最佳实践是什么:
customer
主题和一个article
主题,每个主题都包含其域的事件deleted
包含customer deleted
和article deleted
等的主题。customer:created
,customer:deleted
等...或其他 ..
我正在寻找一种轻松创建的方法AxiosError
(从 axios lib 本身或外部助手)
我有一个我想测试的功能。
import { AxiosError } from 'axios';
export function isEmailConflict({ error }: { error: AxiosError<{ type?: string; message?: string }> }) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
到目前为止我是这样执行的
import { AxiosError } from 'axios';
// ...
describe('isEmailConflict', () => {
function newConflicError(): AxiosError {
return {
isAxiosError: true,
name: '',
message: '',
toJSON: () => ({}),
config: {},
response: {
data: { type: 'aa', message: 'bb' },
status: 409,
statusText: 'Conflict',
headers: {},
config: {}, …
Run Code Online (Sandbox Code Playgroud) 我有一个节点应用程序,可以访问使用 mocha 和 mockgoose 测试的 mongodb 抛出的猫鼬。我最近搬到了 mockgoose 7.0.5。我按照 github 上的入门指南将我的 mocha 超时时间提高到 2 分钟。
这是我在测试中的前功能:
import mongoose from 'mongoose';
var Mockgoose = require('mockgoose').Mockgoose;
[...]
const mockgoose = new Mockgoose(mongoose);
before(function(done) {
try {
console.log('BEFORE prepareStorage');
mockgoose.prepareStorage().then(() => {
console.log('IN prepareStorage');
mongoose.connect('mongodb://example.com/TestingDB', function(err) {
done(err);
});
}).catch((error) => {
done(error);
});
} catch(e) {
done(e);
}
console.log('AFTER prepareStorage');
});
beforeEach(function(done) {
mockgoose.helper.reset();
done();
});
Run Code Online (Sandbox Code Playgroud)
当我运行测试时,在这mockgoose.prepareStorage
一步中,mockgoose 似乎正在下载一些东西。
BEFORE prepareStorage
AFTER prepareStorage
Completed: 0.1 % (0.2mb / 234.3mb
Run Code Online (Sandbox Code Playgroud)
我想这与请求的 2 …
我遇到了一个简单的问题,它有一个hacky解决方案setTimeout(...,0)
.
看看这个简单的代码:
@Component({
selector: 'my-app',
template: `
<div>
<input value='Fill Data' type='button' (click)='fill()'/>
<span *ngFor="let o of Items" class='mySpan'>Span To Detect<br></span>
</div>
`,
})
export class App {
Items:Array<number> = new Array<number>();
fill()
{
this.Items = [1,2,3,4,5,6,7,8,9,10]
this.analyzeDom(); //this has to run here
}
analyzeDom()
{
alert($("div .mySpan").length) // "0"
//BUT if I set this hacky trick , it works
// setTimeout(function (){ alert($("div .mySpan").length)},0) // "10"
}
}
Run Code Online (Sandbox Code Playgroud)
如果单击该按钮,则警报显示"0".我明白为什么会这样.这是因为Angular没有完成其实际填充的周期ngFor
.
然而 - 做这个伎俩setTimeout(..,0)
对我来说似乎有些苛刻,我宁愿不相信它.
题: …
在Internet Explorer 11上改进Angular 2应用程序性能是否有任何特殊技巧?
我们的网站在Chrome和Firefox中都很常见,但是IE 11上的DOM呈现得非常缓慢.我理解其中一些是浏览器引擎的限制,但是当单个更改检测周期导致IE 11上的DOM绘制时间为30-40 ms时,我觉得我们的实施还可以做些其他事情.根据记录,Chrome绘制DOM的时间从不超过1毫秒,因此IE的行为速度比对应的慢约30至40倍.
这是针对DOM事件(滚动)在我们的localhost实例上进行的性能监视的IE11快照.
将此与像Guardian这样的网站进行比较,后者也使用Angular 2.他们的网站的DOM事件处理时间几乎总是低于2毫秒,他们在DOM上显示的内容远比我们复杂得多.
这让我认为有一些特别适合IE 11的优化技术.这是我们迄今为止尝试过的一些事项:
欢迎大家提出意见.
javascript ×4
angular ×2
typescript ×2
axios ×1
dom ×1
mocha.js ×1
mockgoose ×1
mongoose ×1
node.js ×1