小编Scr*_*ffy的帖子

“元素”类型上不存在属性“innerText”

我正在为 Puppeteer 使用 Typescript。我正在尝试从元素中获取innerText。

const data = await page.$eval(selector, node => node.innerText);
Run Code Online (Sandbox Code Playgroud)

我收到错误:

“元素”类型上不存在属性“innerText”

我尝试像这个问题中描述的那样转换为 HTMLElement: 错误“属性 'innerText' 在类型 'EventTarget' 上不存在”?

const data = await page.$eval(selector, <HTMLElement>(node: HTMLElement) => node.innerText);
Run Code Online (Sandbox Code Playgroud)

以及像这样创建我自己的界面:

interface TextElement extends Element {
    innerText: string;
}
Run Code Online (Sandbox Code Playgroud)

但在每种情况下,我都收到了这个特定类型上不存在 innerText 的错误。

“HTMLElement”类型上不存在属性“innerText”

为什么会发生这种情况以及如何处理?

javascript typescript puppeteer

10
推荐指数
2
解决办法
9383
查看次数

HTMLImageElement 作为 React Child 无效

我正在尝试异步加载图像,并且仅在加载图像后才将其显示在 React 应用程序中。

componentDidMount() {
    const img = new Image();
    img.onload = () => {
        this.setState({
            originalImage: img,
        });
    }
    img.src = './images/testImage.jpg'
}

render() {
    return (
       <main>
           {
              this.state.originalImage
           }
       </main>
    );
}
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

对象作为 React 子对象无效(找到:[object HTMLImageElement])

我想知道为什么会发生这个错误。当然,如果我只添加一个<img>标签,它就可以正常工作。

javascript image reactjs

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

Struct消耗太多内存

我正在做一个处理C++中Structs的学校作业.赋值不允许使用STL或new/ delete.

我在杂志上代表物品.

struct PLACE {
    int itemCount;
    int etiquette[2];
};

struct SHELF {
    int placesCount;
    PLACE places[128];
};

struct RACK {
    int shelvesCount;
    SHELF shelves[128]; 
};

struct MAG {
    int racksCount;
    RACK racks[5];
};
Run Code Online (Sandbox Code Playgroud)

现在,当我运行以下代码时,它工作正常,但如果我将机架阵列的长度更改为20,我收到运行时错误(code.exe已停止工作).

PLACE place1 = {1, {1,2}};
SHELF shelf1 = {2, {place1}};   
RACK rack1 = {3, {shelf1}};
MAG mag1 = {1, {rack1}};
Run Code Online (Sandbox Code Playgroud)

好像我超过了某种记忆?我原以为不太可能,因为当我计算它时,(当机架长度为5时)我只使用(((12*128)+ 4)*128 + 4)*5 + 4字节,大约1MB.

EDIT:

我让我的导师对此进行了一些澄清.他告诉我,这可能超过我的,而不是堆栈,因为:(引用)

堆栈处理函数调用和堆栈超出可能是由例如递归引起的,而在这里我们处理的是大数据,所以更确切地说是超出了堆.

他还告诉我,我的计算机可能只有一个下限(大约4MB),而我们的代码正在检查的服务器已被分配1GB来处理这么多数据.

不知道这是否正确,因为从我在线阅读的内容来看,堆栈和堆都可以分配变量而堆栈不是纯粹用于函数调用,而是用于这些函数内部的变量......

c++ struct

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

标签 统计

javascript ×2

c++ ×1

image ×1

puppeteer ×1

reactjs ×1

struct ×1

typescript ×1