小编use*_*043的帖子

为什么在胖箭头函数定义中未定义"this"?

首先我尝试了这个 -

const profile = {
    name: 'Alex',
    getName: function(){
      return this.name;
    }
};
Run Code Online (Sandbox Code Playgroud)

哪个工作正常.现在我用胖箭尝试了同样的事情.在那种情况下,"这个"未定义.

const profile = {
    name: 'Alex',
    getName: () => {
      return this.name;
    }
};
Run Code Online (Sandbox Code Playgroud)

这给了我一个错误

TypeError:无法读取未定义的属性"name"

我学到的是,胖箭头语法更好地处理隐含的"this".请解释为什么会发生这种情况.

javascript ecmascript-6

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

Angular2 - 如何访问尚未呈现的子输入元素?

例如,我的模板看起来像 -

<div #parent>
    <button (click)="showInput()"> Show </button>
    <input #inp *ngIf="showInpField" />
</div>
Run Code Online (Sandbox Code Playgroud)

这就是我的组件的样子:

import { Component, OnInit, ViewChild } from '@angular/core';
@Component({
  selector: 'some-component',
  templateUrl: './template.html',
})
export class SomeComponent {
    @ViewChild('inp') inpField: any;
    showInpField = false;
    constructor() {}
    showInput(){
        this.showInpField = true;
        // This doesn't work
        this.qaTitle.inpField.focus();
    }   
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,焦点不起作用,因为输入元素尚未呈现。我意识到在那条线上使用超时会起作用,但不知何故,我觉得这不是一个好方法。

我想不知何故我已经检测到父 div 内部的变化,并且在那个事件上我应该做焦点操作。我该怎么做?我觉得 QueryList 可能会有所帮助,但我不知道在这种情况下如何使用它!

angular

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

如何从node_modules延迟加载外部模块?

我们可以像这样加载一个本地模块

    {
        path: 'somePpath',
        loadChildren: 'app/path/some.module#SomeModule'
    },
Run Code Online (Sandbox Code Playgroud)

我们如何延迟加载来自外部库的模块,该模块驻留在node_modules中?

angular

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

如何使用 Python API 在 iTerm 会话中运行某些命令

我正在尝试编写一个脚本来在我的 iTerm2 上执行一些自动化操作。我正在使用iTerm 的 Python API,因为我对 AppleScript 一无所知。

我需要做的基本上是,将屏幕分成 6 个窗口,并在每个窗口中本地运行 6 个微服务。我成功地分割了屏幕,但无法在其中任何一个中运行命令。

提前致谢。

我现有的代码如下

#!/usr/bin/env python3.7

import iterm2
# This script was created with the "basic" environment which does not support adding dependencies
# with pip.

async def main(connection):
    # Your code goes here. Here's a bit of example code that adds a tab to the current window:
    app = await iterm2.async_get_app(connection)
    window = app.current_terminal_window
    if window is not None:
        await window.async_create_tab()
    else:
        # You can view …
Run Code Online (Sandbox Code Playgroud)

python iterm iterm2

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

"内联"函数定义的目的是什么?

可能重复:
C++中内联函数的好处?

有什么区别

#include <iostream>
using namespace std;
int exforsys(int);
void main( )
{
        int x;
        cout << "n Enter the Input Value: ";
        cin>>x;
        cout << "n The Output is: " << exforsys(x);
}

int exforsys(int x1)
{
        return 5*x1;
}
Run Code Online (Sandbox Code Playgroud)

#include <iostream>
using namespace std;
int exforsys(int);
void main( )
{
        int x;
        cout << "n Enter the Input Value: ";
        cin>>x;
        cout << "n The Output is: " << exforsys(x);
}

inline int exforsys(int x1)
{ …
Run Code Online (Sandbox Code Playgroud)

c++

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

由于在RC6中不推荐使用addProvider,如何在angular2 jasmine测试规范中添加提供程序?

我想写beforeEach这样的,以便每个人都it获得所需的模块/提供者:

beforeEach(() => addProviders([
        BaseRequestOptions,
        MockBackend,
        {
            provide: Http,
            useFactory: (backend: MockBackend, options: BaseRequestOptions) => new Http(backend, options),
            deps: [MockBackend, BaseRequestOptions]
        },
        MyService
    ]));
Run Code Online (Sandbox Code Playgroud)

但是由于addProvidersRC6中的方法已被弃用,添加我的提供者的更好的替代方法是什么?

angularjs karma-jasmine angular2-testing angular

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

如何为CActiveDataProvider的条件设置多个条件?

我正在进行项目YII.我有Production表,在那里我category_idbrand_id两个列.现在,我想要做的是,只要使用CActiveDataProvider这些特定的行取到$dataprovider它有那些category_idbrand_id$cat$brnd阵列.我做到了category_id,但我没有得到任何东西如何把它们都放在条件上.这是我的代码,请帮忙.

$dataProvider=new CActiveDataProvider(Production::model(),
      array(
     'criteria'=>array('condition' => 'category_id IN ('.implode(',',$cat).')'),
     'pagination' => array('pageSize'=>Yii::app()->params['productsPerPage']),
    )
);
Run Code Online (Sandbox Code Playgroud)

php criteria yii

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