我得到了一个"喔,快!" 加载某个网页时出现chrome崩溃.我正在努力弄清楚是什么导致了它并且真的很难过.
在Chrome开发人员的工具中有一个内存选项卡,当查看计数器图表时,我注意到DOM节点计数行逐步上升,下降,然后继续上升.
我理解这意味着我的页面上的DOM元素数量在增加但是在做完之后
document.getElementsByTagName("*").length
Run Code Online (Sandbox Code Playgroud)
在控制台中,我注意到值没有改变.
那么实际显示的DOM节点计数图是什么?如果它继续这样增加,那可能是"Aw,snap!"的原因.崩溃?
有谁知道如何在完成加载后自动放大图表的一部分?我有很多时间序列数据,但最重要的信息是在右边.我仍然希望所有数据都可用,但只有最近7天的数据放大了.
我想模拟的是用户点击拖动我图表上的最近7天.因此,如果有人知道如何手动触发该事件,那可能就是我想做的事情.
以下是jsfiddle的示例图表,它具有正常的缩放功能:http://jsfiddle.net/Y5q8H/50/
我还有一些关于如何做到这一点的其他想法,但我认为我想要的是最好的方法.
其他想法:
1)仅加载最近7天,放置一个假的"重置缩放"按钮,然后加载整个数据系列
2)看看那个现在处于测试阶段的姊妹产品StockCharts.它似乎有一堆预设范围显示,也很酷.我不确定我现有的代码有多少我必须改变.
我有4个网格,启用了拖放插件.它们的初始网格依赖于名为state_id的db中的值.
当我将所选行放入新网格时,我更新state_id值,然后告诉它与db同步并更新相关项的值.
这在大多数情况下都可以正常工作.当发生以下情况时,我得到此URL未定义错误
当添加到网格中的第一个项目最初来自同一网格时,似乎只会发生此错误.
我的控制器中的drop事件处理程序
dropit: function (node, data, dropRec, dropPosition) {
if (node.dragData.records[0].store.$className == "AM.store.BacklogCards")
{
data.records[0].set('state_id', 1);
this.getBacklogCardsStore().sync();
}
else if (node.dragData.records[0].store.$className == "AM.store.InprogressCards")
{
data.records[0].set('state_id', 2);
this.getInprogressCardsStore().sync();
}
else if (node.dragData.records[0].store.$className == "AM.store.ReviewCards")
{
data.records[0].set('state_id', 3);
this.getReviewCardsStore().sync();
}
else
{
data.records[0].set('state_id', 4);
this.getDoneCardsStore().sync();
}
//node.dragData.records[0].store.sync();
},
Run Code Online (Sandbox Code Playgroud)
有关导致此问题的原因和解决方法的任何想法?
谢谢
sum.js
module.exports = function sum(a, b){
return a + b;
};
Run Code Online (Sandbox Code Playgroud)
Thing.js
var sum = require("./sum");
module.exports = class Thing {
add(a, b){
return sum(a, b);
}
}
Run Code Online (Sandbox Code Playgroud)
Thing.test.js
test('1 + 2 = 3', () => {
//Arrange
var Thing = require('./Thing');
var thing = new Thing();
//Act
var result = thing.add(1, 2);
//Assert
expect(result).toBe(3);
});
test('sum mocked', () => {
//Arrange
jest.mock('./sum', () => {
return jest.fn(() => 42);
});
var Thing = require('./Thing');
var thing = new Thing(); …
Run Code Online (Sandbox Code Playgroud) 我有一个标签数组,我想添加到firestore集合.
如果我没有误解我在这里采用的方法,我认为当我认为将它们"分组"并将它们全部设置为更高效时,我会对该系列进行单独添加.这样的事情可能吗?是否可以同时将文档添加到锻炼集合中?
现在我正在查看每次调用此函数时,tags.length + 1写入firebase.我想尽可能地减少它.
logWorkoutAsync({ userId, timeStamp, tags }){
var db = this.firebase.firestore();
return db.collection('users').doc(userId).collection('workouts').add({
timeStamp,
'class': false
}).then(doc => {
var tagsCollection = doc.collection('tags')
var promises = []
tags.forEach(t => {
promises.push(tagsCollection.doc(t.id.toString()).set(t))
})
return Promise.all(promises)
})
}
Run Code Online (Sandbox Code Playgroud) webpack -p cli命令无法验证es2015代码
的package.json
"devDependencies": {
"babel": "^6.5.2",
"babel-core": "^6.13.2",
"babel-loader": "^6.2.4",
"babel-preset-es2015": "^6.13.2"
}
Run Code Online (Sandbox Code Playgroud)
webpack.config.js
var webpack = require("webpack");
var config = {
entry: './src/app.js',
devtool: "source-map",
output: {
path: '../Scripts',
filename: 'bundle.js'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel-loader',
query: {
presets: ['es2015']
},
include: ["./src"],
exclude: /node_modules/
}
]
}
}
module.exports = config;
Run Code Online (Sandbox Code Playgroud)
运行时出错 webpack -p
ERROR in bundle.js from UglifyJs
Unexpected character '`' [./src/LineEndRenderer.js:33,0]
Run Code Online (Sandbox Code Playgroud)
(es2015模板字符串使用)
跑步webpack -d
很好.
我正在尝试渲染d3js强制模拟,但我想确保我的节点不会中继虚假信息。
使用以下代码显示节点,但是由于力布局的动态特性,它偶尔会将一些节点推出其适当的x坐标位置。
inOrder(){
this.simulation
.force("x", d3.forceX(d => this.xScale(d.value)))
.force("y", d3.forceY(this.height / 2))
.alpha(1).restart();
},
Run Code Online (Sandbox Code Playgroud)
这是发生这种情况的一个令人震惊的例子:数字应按从左到右的顺序排列。
我尝试使用节点上的fx属性将位置锁定在适当的位置:
inOrder(){
this.releases.forEach(x => {
x.fx = this.xScale(x.value)
})
this.simulation
.force("x", d3.forceX(d => this.xScale(d.value)))
.force("y", d3.forceY(this.height / 2))
.alpha(1).restart();
},
Run Code Online (Sandbox Code Playgroud)
这按预期用于保留x位置的方式工作,但是当inOrder
调用该方法时,节点立即跳到其最终的x位置。这破坏了力仿真的流体和动态特性。
有没有办法做到两全其美?也许通过使用.on("end", () => {})
或.on("tick", () => {})
?事件处理程序?
Mike Bostock(/sf/users/25607011/)和Shan Carter创作了一些作品,这些作品启发了我在这里要做的事情:
单击更改和部门总计选项卡之间的 https://archive.nytimes.com/www.nytimes.com/interactive/2012/02/13/us/politics/2013-budget-proposal-graphic.html?hp
单击“总体图片”和“按行业查看”选项卡之间的链接 https://archive.nytimes.com/www.nytimes.com/interactive/2013/05/25/sunday-review/corporate-taxes.html
我希望将我的笑话快照创建为我的测试文件的兄弟
我目前将我的快照放在默认__snapshots__
文件夹中。
当前的:
我想达到的目标:
我在 github 上找到了这篇文章:https : //github.com/facebook/jest/issues/1650
在线程中,有人说以下应该有效,但我没有任何运气(即使更改了正则表达式和其他更改):
module.exports = {
testPathForConsistencyCheck: 'some/example.test.js',
resolveSnapshotPath: (testPath, snapshotExtension) =>
testPath.replace(/\.test\.([tj]sx?)/, `${snapshotExtension}.$1`),
resolveTestPath: (snapshotFilePath, snapshotExtension) =>
snapshotFilePath.replace(snapshotExtension, '.test'),
}
Run Code Online (Sandbox Code Playgroud) 我有一个具有以下结构的表格
- 表#主
- TBODY
- tr.Row
- TD
- input.EditRow
我的jquery看起来像这样:
$("table#Main > tbody > tr.Row").live("click", function (e) {
RowClick($(this));
});
$(".EditRow").live("click", function (e) {
EditRow($(this));
});
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我单击.EditRow按钮并调用EditRow函数,则会立即调用RowClick函数.
在对网站进行一些研究之后,我看到其他人通过使用以下任何一个命令解决了这个问题.
e.preventDefault();
e.stopPropagation();
Run Code Online (Sandbox Code Playgroud)
我尝试了两种功能,不同的组合,但无法弄明白.有人能告诉我我做错了什么吗?
谢谢!<3
HTML:
<ul>
<li>Help</li>
<li>me</li>
<li>Stack</li>
<li>Overflow!</li>
</ul>
<br>
<ul>
<li>Can</li>
<li>I</li>
<li>connect</li>
<li>these?</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
使用Javascript/JQuery的:
$("li").live('click', function(){
alert($(this).index());
});
Run Code Online (Sandbox Code Playgroud)
我整理了一个简单的jsfilled页面来帮助描述我的问题:http://jsfiddle.net/T4tz4/
当前单击LI会警告相对于当前UL组的索引.我想知道是否有可能得到一个'全局索引',以便点击"Can"返回索引值4.
谢谢你,约翰
javascript ×9
jquery ×3
jestjs ×2
babeljs ×1
charts ×1
d3.js ×1
extjs ×1
extjs4 ×1
firebase ×1
force-layout ×1
highcharts ×1
performance ×1
unit-testing ×1
webpack ×1