小编luc*_*aro的帖子

无法在VS Code中调试当前的typescript文件,因为找不到相应的JavaScript

我使用的是Visual Studio Code 1.17版本,我的目标是调试当前的 typescript文件.我有一个构建任务正在运行,所以我总是有一个相应的javascript文件,如下所示:

src/folder1/folder2/main.ts
src/folder1/folder2/main.js
Run Code Online (Sandbox Code Playgroud)

我尝试过以下launch.json配置:

{
  "type": "node",
  "request": "launch",
  "name": "Current File",
  "program": "${file}",
  "console": "integratedTerminal",
  "outFiles": [
    "${workspaceFolder}/${fileDirname}**/*.js"
  ]
}
Run Code Online (Sandbox Code Playgroud)

但我得到错误: Cannot launch program '--full-path-to-project--/src/folder1/folder2/main.ts' because corresponding JavaScript cannot be found.

但相应的JavaScript文件存在!

tsconfig.json:

{
"compileOnSave": true,
"compilerOptions": {
    "target": "es6",
    "lib": [
        "es2017",
        "dom"
    ],
    "module": "commonjs",
    "watch": true,
    "moduleResolution": "node",
    "sourceMap": true
    // "types": []
},
"include": [
    "src",
    "test"
],
"exclude": [
    "node_modules",
    "typings"
]}
Run Code Online (Sandbox Code Playgroud)

javascript typescript visual-studio-code vscode-settings

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

指针上的golang指针作为函数参数

我有以下功能:

func addCatsToMap(m map[string][]CatHouse, meowId int, treats Set, dog *Dog) {

//if (complicated thing) add Cat to m

}
Run Code Online (Sandbox Code Playgroud)

其中Set,type的类型treats是具有以下定义的接口:

type Set interface {
  Add(value string)
  Contains(value string) (bool)
  Length() (int)
  RemoveDuplicates()
}
Run Code Online (Sandbox Code Playgroud)

题:

这是真的m,treatsdog通过按引用,并且meowId有它的价值被复制?

我认为:

  • m 是传递参考,因为它是一张地图
  • dog是一个结构.所以,我应该传递指针以避免复制数据

pointers go

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

在边框拖放时调整div的大小,而不添加额外的标记

我有一个绝对定位的侧面板,我需要通过拖动这个边框来改变它的宽度.此外,我需要更改边框悬停上的光标.是否可以在不添加另一个div进行拖动的情况下执行此操作?

这是标记:

#right_panel {
    position: absolute;
    border-left: solid 3px #ccc;
    width: 100px;
    height: 100%;
    right: 0;
    background-color: #f0f0f0;
}
Run Code Online (Sandbox Code Playgroud)
<body>
    <div id="right_panel"></div>
</body>
Run Code Online (Sandbox Code Playgroud)

我不需要完整的解决方案.是(带文档参考)/没有答案就足够了.我不需要助手的回答div.我已经有一个:

var m_pos;
function resize(e){
    var parent = resize_el.parentNode;
    var dx = m_pos - e.x;
    m_pos = e.x;
    parent.style.width = (parseInt(getComputedStyle(parent, '').width) + dx) + "px";
}

var resize_el = document.getElementById("resize");
resize_el.addEventListener("mousedown", function(e){
    m_pos = e.x;
    document.addEventListener("mousemove", resize, false);
}, false);
document.addEventListener("mouseup", function(){
    document.removeEventListener("mousemove", resize, false);
}, false);
Run Code Online (Sandbox Code Playgroud)
#right_panel {
    position: absolute;
    width: 96px;
    padding-left: …
Run Code Online (Sandbox Code Playgroud)

html javascript css

18
推荐指数
4
解决办法
3万
查看次数

如何用PixiJS渲染SVG?

我正在尝试使用SVG图像制作一个游戏,以实现可伸缩性,并从程序上制作物理对象(请参阅参考资料.js).

我遇到的问题是,如果我加载2个不同的SVG纹理然后渲染它们,第二个在它下面有第一层.

光栅图像不会发生这种情况,只有使用WebGL才会出现画布选项.

有没有办法阻止这个或我做SVG错了?

	var renderer = PIXI.autoDetectRenderer(
		window.innerWidth, 
		window.innerHeight, 
		{
			backgroundColor : 0xffffff,
			resolution:2
		}
	);
	
	// add viewport and fix resolution doubling
	document.body.appendChild(renderer.view);
	renderer.view.style.width = "100%";
	renderer.view.style.height = "100%";
	
	var stage = new PIXI.Container();
	
	//load gear svg
	var texture = PIXI.Texture.fromImage('https://upload.wikimedia.org/wikipedia/commons/thumb/0/0b/Gear_icon_svg.svg/2000px-Gear_icon_svg.svg.png');
	var gear = new PIXI.Sprite(texture);

	//position and scale
	gear.scale = {x:0.1,y:0.1};
	gear.position = {x:window.innerWidth / 2,y:window.innerHeight / 2};
	gear.anchor = {x:0.5,y:0.5};

	//load heart svg
	var texture2 = PIXI.Texture.fromImage('https://upload.wikimedia.org/wikipedia/commons/thumb/4/42/Love_Heart_SVG.svg/2000px-Love_Heart_SVG.svg.png');
	var heart = new PIXI.Sprite(texture2);

	//position and …
Run Code Online (Sandbox Code Playgroud)

javascript svg webgl pixi.js

16
推荐指数
2
解决办法
5345
查看次数

在 Node.js 中获取当前工作目录名称而不是路径

我正在开发一个需要使用当前目录名称的 CLI 应用程序。

我可以使用process.cwd(). 如何获取当前目录名称而不是整个路径?

可以执行以下操作吗?

process.cwd().split('/').slice(-1)[0]
Run Code Online (Sandbox Code Playgroud)

它有效,但感觉很脆弱。这样做的最佳和最强大的方法是什么?

javascript node.js

9
推荐指数
2
解决办法
6204
查看次数

我应该使用async/await还是promises?

我正在寻找关于在nodeJS应用程序中使用什么的答案.

我有代码处理我对mssql的通用dB访问.这段代码是使用async函数编写的,然后我使用了一个承诺调用该函数,一切正常.

随着我的应用程序越来越大,代码越来越大,我计划将一些逻辑转移到函数中然后调用它们.

所以我的问题是:使用async/await和promises的组合是否有缺点,或者它真的无关紧要?

Async/await使编写更易读的代码变得更容易,因为在返回内容之前我必须读取和写入多个db,我需要其中一些结果.

所以问题是什么是更好的方法?异步/等待在dB层上设置并且无法更改逻辑层async/await将允许我在函数调用上执行异步/等待,或者如果我继承逻辑,那么我在函数调用中遇到了承诺.

因此,除了能够编写更清晰的代码之外,如果一个人比另一个人有更多的优势,我希望有人可以给我更多的见解.

javascript node.js promise async-await

8
推荐指数
3
解决办法
2603
查看次数

在某些设备上使用SENDTO发送带附件的电子邮件不起作用

起初你会想到"等等,这个问题是重复的!".继续阅读.

我正在尝试使用Intent ACTION_SENDTO(使用电子邮件URI作为数据),以便只有电子邮件应用程序响应.

(使用ACTION_SEND启动标准"SEND"选择器而没有数据URI意味着非电子邮件应用程序(如Google Drive)也会响应).

我的问题是附件适用ACTION_SEND于所有设备,但是 - 当ACTION_SENDTO只使用某些设备正确附加文件时.Nexus 7可以使用,但三星Galaxy Tab和Acer Iconia 没有.

您可以在下面看到不同的方法:

    String email    = getActivity().getResources().getString(R.string.supportEmail);
    String subject  = getActivity().getResources().getString(R.string.sFeedback);
    subject         = String.format(subject, 
                      getActivity().getResources().getString(R.string.productName));
    String content  = getActivity().getResources().getString(R.string.whatFeedbackWouldYouLikeToProvide) + "\n\n" + 
                      mMessage.getText().toString();
    File toSend     = new File(outfile);

    if(toSend.exists()) {
        Log.e("Feedback", "File path: " + toSend.getAbsolutePath());

        Intent emailIntent = new Intent(android.content.Intent.ACTION_SENDTO);
        emailIntent.setData(Uri.parse("mailto:" +email));
        emailIntent.putExtra(android.content.Intent.EXTRA_STREAM,   Uri.fromFile(toSend));
        emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT,  subject);               
        emailIntent.putExtra(android.content.Intent.EXTRA_TEXT,     content);  

    /*  Intent emailIntent = new Intent(Intent.ACTION_SEND);
        emailIntent.setType("message/rfc822");
        emailIntent.putExtra(Intent.EXTRA_EMAIL  , new String[]{email}); …
Run Code Online (Sandbox Code Playgroud)

android sendto

6
推荐指数
2
解决办法
5333
查看次数

如何隐藏其他div除了触及乐队的div

我想隐藏其他divs除了碰到乐队的div

乐队就是这个元素 <div class="center-band"></div>

每当滚动元素必须显示touches元素时<div class="center-band"></div>,必须隐藏其他div

问:touched divband有显示,和其他人必须是hidden,这意味着只有一个content具有在时间显示.

jsbin: https ://jsbin.com/zudideheza/edit html,css,js,console,output

$(function()
{
    var pos = 1;
    var ii = 0;

    var intId = setInterval(function()
    {
        ii++;
        pos = - ii;
        //console.log(pos);

        $('.container').css({
            transform: 'translateY(' + pos + 'px)'
        });
    }, 100);
});
Run Code Online (Sandbox Code Playgroud)
.container {
    width: 100%;
    height: 100%;
    background: #000000d6;
    font-size: 19px;
    color: #a19999;
    position: relative;
}

.contents {
    margin-bottom: 15px;
    border-bottom: …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

为什么`setTimeout`在通过yield传递回调时不起作用?

在以下代码中:

function so() {
  console.log('inside the timer')
}

function* sogen() {
  const callback = yield;

  setTimeout(callback, 2000);

  return 1;
}

function() {
  var gen = sogen();
  gen.next(so), gen.next(so);
}()
Run Code Online (Sandbox Code Playgroud)

为什么我从未达到功能so

javascript asynchronous yield typescript

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

在TypeScript中使用解构和休息键入的函数参数

我有一个功能:

export default ({
  input: { name, onChange, value, ...restInput },
  meta,
  ...rest
}) => (
  ...
);
Run Code Online (Sandbox Code Playgroud)

鉴于'name'是一个字符串,'onChange'是一个函数,'value'是一个字符串,'meta'是一个对象,我怎样才能为这些参数添加类型?我最好的猜测是这样的:

export default ({
  input: { (name: String), (onChange: function), (value: String), ...restInput },
  (meta: Object),
  ...rest
}) => (
  ...
);
Run Code Online (Sandbox Code Playgroud)

但它似乎有语法错误.甚至更多我不知道如何添加类型到休息参数.

javascript types destructuring typescript

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