小编Eri*_*zen的帖子

角度完美地向组件属性发送组件属性

我最近意识到React中的以下技术将属性转换为子组件.这使用了解构赋值:

const MyInputComponent = (props) => <input {...props} />
Run Code Online (Sandbox Code Playgroud)

使用它,您可以完美地包装组件,而无需重新实现其界面.

Angular组件是否有类似的技术?

编辑:找到重复的Angular2:将所有属性传递给子组件

angular

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

在 __destruct() 中,如何查看当前是否存在异常?

我如何查看当前是否存在异常,即堆栈正在展开?

在下面的示例中,您将如何实施isExceptionInFlight()

<?php

class Destroyer
{
    function __destruct()   {
        if (isExceptionInFlight()) {
            echo 'failure';
        } else {
            echo 'success';
        }
    }
}

function isExceptionInFlight() {
    // ?????
}

function createAndThrow()
{
    $var = new Destroyer;
    throw new \Exception;
}

createAndThrow();
Run Code Online (Sandbox Code Playgroud)

这样做的目的是实现 D 的scope语句,该语句可作为多种其他语言的库使用。这使您可以摆脱嵌套的 try-catch 块,从而更轻松地正确执行回滚事务。

附录1:

我环顾过 Zend PHP 引擎,executor_globals.exception似乎就是我正在寻找的东西(https://github.com/php/php-src/blob/master/Zend/zend_globals.h)。然而,nullptr当我在 __destruct() 期间检查它时,该值始终是。知道我接下来应该看哪里吗?

附录2:

检查executor_globals.opline_before_exception取得了一些进展。但是,它不会重置为nullptr捕获异常时的值。

附录3:

我找到了以下代码(第135行)

/* Make sure that destructors are protected from previously …
Run Code Online (Sandbox Code Playgroud)

php destructor exception php-internals

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

标签 统计

angular ×1

destructor ×1

exception ×1

php ×1

php-internals ×1