小编Clo*_*kex的帖子

必须使用 import 加载 ES 模块: ...\node_modules\got\dist\source\index.js

还有几十个其他问题的标题基本相同,但没有一个答案似乎是相关的,只会增加混乱。

这是我的tsconfig.json

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "lib": ["es2017", "es7", "es6", "dom"],
    "declaration": true,
    "outDir": "dist",
    "strict": true,
    "esModuleInterop": true
  },
  "exclude": [
    "node_modules",
    "dist"
  ]
}
Run Code Online (Sandbox Code Playgroud)

这是我输入的内容:

import md5 from 'js-md5';
import got from 'got';
import { Design } from './Design';
...
Run Code Online (Sandbox Code Playgroud)

这是我的错误:

错误 [ERR_REQUIRE_ESM]:必须使用 import 加载 ES 模块:C:\Users\...\node_modules\got\dist\source\index.js 不支持 ES 模块的 require() 。

什么。我不是require,我是在用import。我在任何其他模块上都没有遇到此错误,那么为什么 Got 有所不同(并且为什么没有什么是简单的)?

为什么会发生这种情况以及如何解决它?


根据@jsejcksn 的回答,我尝试将其更改tsconfig.json为以下内容:

{
  "compilerOptions": {
    "target": "es6", …
Run Code Online (Sandbox Code Playgroud)

node.js typescript node.js-got

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

C++分支递归结构?

我有以下内容.结构是原型,所以它编译得很好.

struct vertexNodeInfo
{
    vector<vertexNodeInfo> node;
};
Run Code Online (Sandbox Code Playgroud)

我正在尝试写一个八叉树的东西.我想要做的是使用递归函数继续向每个节点添加一个节点,直到我到达一个特定的点,此时函数,而不是添加另一个节点,添加一个叶子.如果可能的话,如果没有其他节点或叶子添加,我想不使用内存.

也许模板会在这种情况下有所帮助,但我不确定如何使用它们......

我不认为我已经很好地解释了自己.这是一个图表:

分支递归结构

我不知道我所要求的是不可能或者太难以理解或者只是简单的愚蠢,但我无法自己解决这个问题.对不起,我无法解释它.

我正在使用C++ 98/03(VC++ 2008),不能使用C++ 11

任何帮助都将非常感激.

附加信息:

更好的解释:我想要一个数组数组的数组数组.内存使用非常重要(我存储了数百万个元素,因此单个字节会产生巨大差异).每个数组可以包含8个以上的数组,但在我需要使用它之前,我希望每个数组都不使用内存.这是一种八重奏.

更多附加信息:

这是另一张图.它有点大,所以您可能需要右键单击它并选择Open image in new tab使其可读.

想要的是"棕色"(红色+绿色)框,其中每个框都为更多节点和叶数据保留内存.这将为我的需求使用太多的内存.

这基本上就是我想要实现的,为简单起见为2D:

我对八叉树的想法的二维例子

c++ recursion struct octree

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

我可以从模板中访问struct/class成员吗?

我想要做的是创建一个接受任何类或结构(通过模板)的函数,但也让函数假定传入的类或结构中总是有一个特定的成员.

在可能不正确的代码中,它看起来像这样:

template <class inputType>
int doSomething(inputType voxel)
{
    return voxel.density;
}
Run Code Online (Sandbox Code Playgroud)

我希望它假设density成员将永远在那里并且它将永远是int(或其他).我能这样做吗?如果是这样,如果density不存在会发生什么?它会简单地抛出编译器错误吗?

c++ templates member

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

两个四元数之间的“距离”(或角度大小)?

我想找到两个四元数之间的“距离”。“距离”是指单个浮点数或整数,而不是另一个四元数(这就是差值,即inverse(q1)*q2)。我猜你可以称呼我想要的“角度大小”。

我需要向物理对象施加更大的扭矩,使其从原始角度旋转得越远。

我不了解四元数中涉及的数学,因此基于代码的示例将非常有帮助。我已经看过其他几个问题,但是我不相信任何问题,或者至少不能以我理解的方式回答。

distance rotation quaternions

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

两点之间的角度,0-360,CW

如何找到原点为0,1的点与另一点(如下图中的)之间的角度(0 到 360 度,顺时针旋转) ?这是我需要的一个有点粗略的说明:0.3,-0.170,0

定制atanfull

左边的圆圈纯粹是为了显示我希望角度旋转的方向,以及它们从哪里开始/结束。右图给出了我将提供给代码的输入示例(即0.3,-0.17)。绿线是结果角度。

如何在 C++ 或 JavaScript 中找到如上所述的两点之间的角度?

javascript c++ math geometry angle

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

在什么时候vsync"等待"(阻止)?

假设我的程序非常快,如果禁用vsync,则运行速度> 60fps.vsync何时强制程序等待?清除屏幕或翻转缓冲区时是否会阻塞?还是在其他时间我不知道?

顺便说一句,我指的是OpenGL.


奖金问题

鉴于阻塞发生的特定点不一定,我如何衡量阻塞的持续时间?换句话说,我将如何工作,如何快速的程序可以运行?

c++ opengl

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

使用文件系统作为离线播放视频的来源

我正在尝试为我的HTML5视频播放器添加离线功能.我试图将文件作为blob写入chrome文件系统,然后从那里读取它们.我相信我遇到的问题是文件实际上并没有被写入,只是文件名.由于我的下面的代码目前已经构成,它仍然有效,但仍然只有它永久连接到互联网.我的目标是将文件下载到文件系统中的永久目录,然后在互联网断开连接时继续播放.

$(document).ready(function() {


    var dir = "http://www.kevmoe.com/networks/gsplayer/";
    var fileextension = ".mp4";
    var srcfiles = $.ajax({
        //This will retrieve the contents of the folder if the folder is configured as 'browsable'
        url: dir,
        success: function(data) {
            //List all .mp4 file names in the page
            $(data).find("a:contains(" + fileextension + ")").each(function() {
                var filename = $(this).attr("href").replace(window.location.host, "").replace("http://", "");

                $("#container").append("<div id='div1' class='video'><video id='video1' class='vidarray' preload='none' poster='bkg.png'><source src='" + filename + "' type='video/mp4'></video></div>");
                async: false;


                window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem;

                window.requestFileSystem(window.PERSISTANT, 200000 * 1024 * …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-os html5-filesystem

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

graphql-php 入门:如何从 .graphql 文件将解析器函数添加到架构?

我对 GraphQL 完全陌生,想尝试一下 graphql-php 来构建一个简单的 API 来开始。我目前正在阅读文档并尝试示例,但我一开始就陷入困境。

我希望将我的架构存储在schema.graphql文件中,而不是手动构建它,因此我按照文档了解如何执行此操作,并且它确实有效:

<?php
// graph-ql is installed via composer
require('../vendor/autoload.php');

use GraphQL\Language\Parser;
use GraphQL\Utils\BuildSchema;
use GraphQL\Utils\AST;
use GraphQL\GraphQL;

try {
    $cacheFilename = 'cached_schema.php';
    // caching, as recommended in the docs, is disabled for testing
    // if (!file_exists($cacheFilename)) {
        $document = Parser::parse(file_get_contents('./schema.graphql'));
        file_put_contents($cacheFilename, "<?php\nreturn " . var_export(AST::toArray($document), true) . ';');
    /*} else {
        $document = AST::fromArray(require $cacheFilename); // fromArray() is a lazy operation as well
    }*/

    $typeConfigDecorator = function($typeConfig, $typeDefinitionNode) {
        // In …
Run Code Online (Sandbox Code Playgroud)

graphql graphql-php

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

在RStudio中转义readLines()函数

由于我使用R所做的工作,因此需要使用该readline()功能输入文本。当有时,而不是书面方式这个问题是readline()我跑readLines()意外(因为自动完成或无论何种原因)。

一旦运行readLines(),便无能为力了。我可以继续写,但是不能在控制台中恢复提示(无法运行任何代码),因为我不知道如何关闭readLines()函数调用。有什么线索吗?

请注意,此问题仅在RStudio中发生(根据Matt的评论,在Visual Studio中也是如此)。

在此处输入图片说明

console r rstudio

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

如何声明并等待异步委托?

出于某种原因,尽管这个问题在我的谷歌搜索中出现了很多,但我似乎找不到真正的答案。也许我只是错误地使用了代表,我不确定。如果这是一个 XY 问题,我很高兴有其他方法来处理这个问题。

假设我有这个:

public class SomeLibrary
{
    public delegate void OnSomethingHappened(EventInfo eventInfo);
    public OnSomethingHappened onSomethingHappened;
    
    public void SomeMethod()
    {
        // ...
        
        // Something happened here, so we'd better trigger the event
        onSomethingHappened?.Invoke(eventInfo);
        
        // ...
    }
}

public class MyCode
{
    public void SomeInitialisationMethod()
    {
        SomeLibrary someLibrary = new SomeLibrary();
        someLibrary.onSomethingHappened += SomeEventHandler;
    }
    
    private void SomeEventHandler(EventInfo eventInfo)
    {
        DoSyncProcessing(eventInfo);
    }
}
Run Code Online (Sandbox Code Playgroud)

这应该没问题(除非有愚蠢的拼写错误)。

现在想象一下我的常规同步DoSyncProcessing函数突然必须变得异步,就像这个神奇的非功能代码一样:

public class SomeLibrary
{
    public async delegate Task OnSomethingHappened(EventInfo eventInfo); // <<< IDK what …
Run Code Online (Sandbox Code Playgroud)

c# delegates asynchronous async-await

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