在应用程序引导程序属性下列出组件

时间:2019-02-26 11:07:57

标签: yii2

我正在开发模块扩展,并且有一个我正在尝试配置的名为yii2-jsUrlManager的官方组件。

文档说我需要在componentsbootstrap之下添加组件

  
      
  1. 向您的应用程序配置添加组件

    'jsUrlManager' => [
        'class' => \dmirogin\js\urlmanager\JsUrlManager::class, 
     ],
    
  2.   
  3. 将组件添加到引导程序

    'bootstrap' => ['jsUrlManager'],
    
  4.   

这意味着我的配置将如下所示

[
    'components'=>[

      //...other components

      'jsUrlManager' => [
           'class' => \dmirogin\js\urlmanager\JsUrlManager::class,
       ],

      //...other components
    ],
    'bootstrap'=>['jsUrlManager']
]

这很简单,但是如果我在下面的模块下列出组件,该怎么办

[
    'modules' => [
        'idows' => [
            'class' => 'path\to\Module',
            'components' => [
                'jsUrlManager' => [
                    'class' => \dmirogin\js\urlmanager\JsUrlManager::class,
                ],
            ],
        ],
    ],
    'bootstrap' => [
        'jsUrlManager',
    ],
]

当我像上面那样实现它时,它会抛出像下面这样的异常

  

无效的配置– yii \ base \ InvalidConfigException

     

未知的自举组件ID:jsUrlManager

当组件ID附加在模块的bootstrap部分下而不是默认components下时,如何在组件属性components下列出组件ID?

1 个答案:

答案 0 :(得分:2)

p_row = p_k + n; #pragma omp parallel for private (i,j) shared (n,k,p_row,p_k) for (i = k+1; i < n; i++) { for (j = k+1; j < n; j++) *(p_row + j) -= *(p_row + k) * *(p_k + j); #pragma omp critical p_row += n; #pragma omp flush(p_row) } 是可以处理简单情况的快捷方式,但是对于任何非标准情况(例如您的情况),您应该使用Closure来引导组件:

'bootstrap' => ['jsUrlManager']