【问题标题】:Autocomplete object property in netbeansnetbeans中的自动完成对象属性
【发布时间】:2014-02-14 14:44:42
【问题描述】:

也许这将是一个非常蹩脚的问题,但我只是尝试。 我构建了自己的 MVC 框架。

在控制器中,我正在创建一个名为 $Object 的新对象。 对象类有一个私有属性$id,和一个getter getId();

在控制器中,我正在创建一个新的 View(),它正在加载模板文件。 所以我的控制器看起来像这样:

$View = new View('templateFile.php');
$View->Object = new Object();
$View->show();

如果我在控制器中编辑它,当键入 $View->Object->ge...时,netbeans 会自动尝试将其自动完成为 getId 或提供以“ge”开头的所有方法。 很酷。

我正在编辑模板文件,其中 $this 是 View 对象。 当我键入 $this-> 和 CTLR+Space 时,没有任何建议。

有没有可能以某种方式赚取这个?

如果我可以使用 $this->Object-> 和 CTRL+Space 来做到这一点,那可能是一个梦想。

这是我的 View 类的重要部分:

public function show() {
        echo $this->getViewContent();
}

public function getViewContent() {
    $container = null;
    $defaultViewHeader = '';
    if ($this->showDefaultViewHeader) {
        if (file_exists($this->viewsDir . $this->defaultViewHeaderFile)) {
            $defaultViewHeader = $this->getContent($this->viewsDir . $this->defaultViewHeaderFile);
        } else {
            $defaultViewHeader = $this->getContent($this->commonDir . $this->defaultViewHeaderFile);
        }
    }
    $pageContent = $this->getContent($this->file);
    if ($this->showDefaultViewHeader) {
        $pageContent = $defaultViewHeader . $pageContent;
    }
    if ($this->showContainer) {
        $container = $this->getContent($this->viewsDir . $this->containerFile);
        $pageContent = str_replace('[' . HTD_PAGECONTENT . ']', $pageContent, $container);
    }
    return $pageContent;
}

public function getContent($file) {
    ob_start();
    include ($file);
    $content = ob_get_contents();
    ob_end_clean();
    return $content;
}

【问题讨论】:

    标签: netbeans autocomplete


    【解决方案1】:

    您可以使用“var”注释为 netbeans 指定变量类型。 尝试将此行添加到您的模板中:

    /* @var $this View */
    

    更多信息在这里https://blogs.oracle.com/netbeansphp/entry/defining_a_variable_type_in

    【讨论】:

    • 无论有没有它,我都可以访问视图属性和方法,但不能访问附加对象。
    • 好的,我会试试这个。现在我注意到,如果这样做: /* @var $RedLegion Legion */ 然后 $RedLegion = $this->RedLegion;之后,我可以访问自动完成功能。我将更深入地检查您链接的文件。谢谢。
    猜你喜欢
    • 2014-03-04
    • 2010-09-28
    • 2019-12-13
    • 2022-11-19
    • 2016-09-13
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    相关资源
    最近更新 更多