小编Ben*_*Ben的帖子

VSCode 调试器:在与“npm link”符号链接的 Typescript 包中设置断点

我正在尝试调试 NodeJS 应用程序及其与npm link.

结构如下:

/root/package-a # typescript package
/root/package-b # another typescript package
/root/app # NodeJS application
Run Code Online (Sandbox Code Playgroud)

我已将包链接到应用程序,如下所示:

  1. npm link每个包装内
  2. npm link package-a package-b 在应用程序中

然后/root/app/.vscode/launch.json我有:

"runtimeArgs": ["--preserve-symlinks"],
"outFiles": [
  "${workspaceFolder}/build/**/*.js",
  "${workspaceFolder}/../package-a/build/**/*.js",
  "${workspaceFolder}/../package-b/build/**/*.js",
]
Run Code Online (Sandbox Code Playgroud)

当使用 . 构建每个包和应用程序时,这一切都非常有效npm run tsc。同样在监视模式下,更改会正确地从包传播到应用程序。但是,当我尝试在任何包内的 VS Code 中设置断点时,调试器找不到相关的 TS 源。断点保持灰色:-(

红色断点在应用程序中,而灰色断点在包内

另外:我已经设置了每个tsconfig.json文件,因此应用程序和包中的每个构建文件旁边"sourceMap": true都有文件。.js.map

如何正确设置,使包中的断点变成红色?

source-maps typescript visual-studio-code npm-link vscode-debugger

8
推荐指数
1
解决办法
1208
查看次数

DocTine @UniqueEntity和ManyToOne字段?

我正在尝试创建一个包含2个字段的UniqueEntity(两个字段都是ManyToOne).

代码如下:

/*
* @ORM\Table()
* @ORM\Entity
* @ORM\HasLifecycleCallbacks()
* @UniqueEntity(fields={"user", "connect"})
*/
class UserConnect
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var boolean $isLeader
     *
     * @ORM\Column(name="isLeader", type="boolean")
     */
    private $isLeader;

    /**
     * @var date $joinedDate
     *
     * @ORM\Column(name="joinedDate", type="date")
     */
    private $joinedDate;

    /**
     * @ORM\ManyToOne(targetEntity="User", inversedBy="userConnects")
     * 
     */
    private $user;

    /**
     * @ORM\ManyToOne(targetEntity="Connect", inversedBy="userConnects")
     * 
     */
     private $connect;
Run Code Online (Sandbox Code Playgroud)

目标是确保我只有一个实体将USER与CONNECT链接起来.

我应该在@UniqueEntity宣言中写点什么吗?

php doctrine many-to-one symfony doctrine-orm

7
推荐指数
3
解决办法
3686
查看次数

核心数据,尝试使用NSPredicate过滤一个toMany关系集,但得到"这里不允许多对键"错误

这是我的模型:http: //www.girardet.ch/model.png

我的目标是使用这些标准检索所有引号:

  • 属于一个特定的主题:主题的name_en属性
  • 按相关性排序
  • 由作者过滤(使用作者的别名属性)

这是我的代码:

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"ThemeEntries" inManagedObjectContext:_context];
[fetchRequest setEntity:entity];

NSSortDescriptor *sortDescriptor1 = [[NSSortDescriptor alloc] initWithKey:@"relevancy" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor1, nil];
[fetchRequest setSortDescriptors:sortDescriptors];

// predictate - filter
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"theme.name_en=%@ AND quotes.author.alias=%@",@"mytheme", @"myauthor"];
Run Code Online (Sandbox Code Playgroud)

[fetchRequest setPredicate:predicate];

我得到"to-many key not here here"错误.

如果我改为使用这个谓词

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"theme.name_en=%@, @"mytheme"];
Run Code Online (Sandbox Code Playgroud)

它运作良好,我可以循环ThemeEntries我获得并得到我的所有报价...但它不是由作者过滤.

我可以做些什么来过滤作者?

iphone core-data objective-c nspredicate

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

我尝试使用setReturnsDistinctResults来获取Core Data的不同结果,但无法使其正常工作

我有一个名为"Themes"的Core Data实体,有4个属性.其中一个叫做"名字".此属性不是唯一的.我想检索数据中包含的所有名称的列表.

看来我需要使用获取请求的setReturnesDistinctResults:YES选项但我无法使其工作.下面的代码有什么问题吗?

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
// entity
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Themes" inManagedObjectContext:_context];
[fetchRequest setEntity:entity];

// sort descriptor
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];

// return distinct
NSDictionary *entityProperties = [entity propertiesByName];
[fetchRequest setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"name"]]];
[fetchRequest setReturnsDistinctResults:YES];

NSError *error;
NSArray *fetchedObjects = [_context executeFetchRequest:fetchRequest error:&error];

for (Themes *theme in fetchedObjects) {
    NSLog(@"Theme = %@", theme.name);
}

[fetchRequest release];
[sortDescriptor release];
[sortDescriptors release];
Run Code Online (Sandbox Code Playgroud)

iphone core-data objective-c

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

当 DOM 元素位于场景上方时,THREE.JS OrbitControls 不起作用

我正在尝试将标签作为元素position:absolute;放置在 THREE.JS 场景中。问题在于,当鼠标悬停在标签之一(下例中的红色框)上时,触发 OrbitControls 的事件会被标签“停止”并且不会传播到渲染器。

我已经复制了一个最小版本的代码来查看问题。

在此处输入图片说明

<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
    <style>
        body {
            margin: 0px;
            overflow: hidden;
        }

        #overlay {
            position: absolute;
            top: 40%;
            left: 40%;
            width: 20%;
            height: 20%;
            background-color: #f00;
            padding: 3%;
            text-align: center;
            color: #fff;
            box-sizing: border-box;
        }
    </style>
</head>

<body>
    <div id="container"></div>

    <!-- This div below stop the OrbitControls events, why? -->
    <div id="overlay">I am a div with position:absolute</div>

    <script src="https://cdnjs.cloudflare.com/ajax/libs/three.js/87/three.min.js"></script>
    <!-- https://raw.githubusercontent.com/mrdoob/three.js/r87/examples/js/controls/OrbitControls.js -->
    <script src="orbit-controls.js"></script>
    <script> …
Run Code Online (Sandbox Code Playgroud)

javascript css events three.js

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

如何在javascript中拆分语言字符串(Wordpress qTranslate)

我有这个javascript字符串:

"<!--:fr-->Photos<!--:--><!--:en-->Pictures<!--:-->"
Run Code Online (Sandbox Code Playgroud)

我需要解析它以获得不同字符串中的每个"语言".理想的是拥有如下功能:

function getText(text, lang){
    // get and return the string of the language "lang" inside the multilang string "text"
}
Run Code Online (Sandbox Code Playgroud)

我可以这样打电话:

var frenchText = getText("<!--:fr-->Photos<!--:--><!--:en-->Pictures<!--:-->","fr");
// and would return:
// frenchText = Photos
Run Code Online (Sandbox Code Playgroud)

如果有人知道这样做的好方法,可能有一个很棒的正则表达!

javascript wordpress jquery qtranslate

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