小编Rob*_*ozo的帖子

Google Chrome开发人员工具时间轴内存视图中的DOM节点数是多少?

我得到了一个"喔,快!" 加载某个网页时出现chrome崩溃.我正在努力弄清楚是什么导致了它并且真的很难过.

在Chrome开发人员的工具中有一个内存选项卡,当查看计数器图表时,我注意到DOM节点计数行逐步上升,下降,然后继续上升.

Dom节点数增加

我理解这意味着我的页面上的DOM元素数量在增加但是在做完之后

document.getElementsByTagName("*").length
Run Code Online (Sandbox Code Playgroud)

在控制台中,我注意到值没有改变.

那么实际显示的DOM节点计数图是什么?如果它继续这样增加,那可能是"Aw,snap!"的原因.崩溃?

performance google-chrome

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

加载后自动放大高图

有谁知道如何在完成加载后自动放大图表的一部分?我有很多时间序列数据,但最重要的信息是在右边.我仍然希望所有数据都可用,但只有最近7天的数据放大了.

我想模拟的是用户点击拖动我图表上的最近7天.因此,如果有人知道如何手动触发该事件,那可能就是我想做的事情.

以下是jsfiddle的示例图表,它具有正常的缩放功能:http://jsfiddle.net/Y5q8H/50/

我还有一些关于如何做到这一点的其他想法,但我认为我想要的是最好的方法.

其他想法:

1)仅加载最近7天,放置一个假的"重置缩放"按钮,然后加载整个数据系列

2)看看那个现在处于测试阶段的姊妹产品StockCharts.它似乎有一堆预设范围显示,也很酷.我不确定我现有的代码有多少我必须改变.

javascript jquery charts highcharts

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

同步商店的Extjs在特定条件下给我一个url是未定义的错误

我有4个网格,启用了拖放插件.它们的初始网格依赖于名为state_id的db中的值.

当我将所选行放入新网格时,我更新state_id值,然后告诉它与db同步并更新相关项的值.

在此输入图像描述

这在大多数情况下都可以正常工作.当发生以下情况时,我得到此URL未定义错误

  1. 用户单击将行A从网格1拖动到网格2
  2. 用户将行A从网格2拖动到网格1
  3. 错误!网址未定义.

当添加到网格中的第一个项目最初来自同一网格时,似乎只会发生此错误.

  1. 用户单击将行A从网格1拖动到网格2
  2. 用户单击将行B从网格2拖动到网格1
  3. 用户单击将行A从网格2拖动到网格1
  4. 按预期工作!

我的控制器中的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)

有关导致此问题的原因和解决方法的任何想法?

谢谢

javascript extjs extjs4

10
推荐指数
1
解决办法
2502
查看次数

用Jest模拟需要语句

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)

javascript unit-testing jestjs

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

如何使用firebase firestore有效地将项目添加到集合中

我有一个标签数组,我想添加到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)

javascript firebase google-cloud-firestore

7
推荐指数
2
解决办法
7053
查看次数

webpack -p无法uglify es2015代码

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很好.

javascript webpack babeljs

6
推荐指数
1
解决办法
1772
查看次数

D3js强制仿真具有特定目标位置

我正在尝试渲染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

javascript data-visualization d3.js force-layout

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

如何配置 jest 快照位置

我希望将我的笑话快照创建为我的测试文件的兄弟

我目前将我的快照放在默认__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)

javascript jestjs

5
推荐指数
2
解决办法
2590
查看次数

嵌套的jquery选择器触发父和子特定事件

我有一个具有以下结构的表格

  • 表#主
    • 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

javascript jquery

4
推荐指数
1
解决办法
951
查看次数

如何在jquery中获取非兄弟元素的索引?

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 jquery

4
推荐指数
1
解决办法
440
查看次数