2017-02-24 48 views
0

我正在用reactjs構建Drupal 8模塊,我需要從控制器獲取當前節點ID,因此我可以根據節點ID執行某些任務,但我總是收到一個空值值,我的路由工作正常,我的功能如下:Drupal 8 - 從控制器獲取當前節點ID

public function currentNodeId() 
    { 
     // get current node 
     $node_id = \Drupal::routeMatch()->getParameter('node')->Id(); 

     return new JsonResponse(
      array(
       'node_id' => $node_id 
      ) 
     ); 
    } 

和mymodule.routing.yml我:

mymodule-currentNode: 
    path: '/mymodule/currentNodeId' 
    defaults: 
    _controller: '\Drupal\mymodule\Controller\MyModuleController::currentNodeId' 
    _title: 'Current node id' 
    requirements: 
    _permission: 'access content' 

我可以從我的模塊文件「獲取當前節點ID mymodule.module'與我在currentNodeId函數中做的相同:

$node_id = \Drupal::routeMatch()->getParameter('node')->Id(); 

任何人都知道這是某種安全還是我做錯了什麼?謝謝

回答