我正在尝试调试 NodeJS 应用程序及其与npm link.
结构如下:
/root/package-a # typescript package
/root/package-b # another typescript package
/root/app # NodeJS application
Run Code Online (Sandbox Code Playgroud)
我已将包链接到应用程序,如下所示:
npm link每个包装内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
我正在尝试创建一个包含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宣言中写点什么吗?
这是我的模型:http: //www.girardet.ch/model.png
我的目标是使用这些标准检索所有引号:
这是我的代码:
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我获得并得到我的所有报价...但它不是由作者过滤.
我可以做些什么来过滤作者?
我有一个名为"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) 我正在尝试将标签作为元素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字符串:
"<!--: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)
如果有人知道这样做的好方法,可能有一个很棒的正则表达!
core-data ×2
iphone ×2
javascript ×2
objective-c ×2
css ×1
doctrine ×1
doctrine-orm ×1
events ×1
jquery ×1
many-to-one ×1
npm-link ×1
nspredicate ×1
php ×1
qtranslate ×1
source-maps ×1
symfony ×1
three.js ×1
typescript ×1
wordpress ×1