使用drupal和angularjs的动态基本url

使用drupal和angularjs的动态基本url,angularjs,drupal,drupal-7,Angularjs,Drupal,Drupal 7,我已经在drupal 7中创建了2个angular应用程序 "example.com" "example.com/app1" "example.com/app2" example.com是我的主要网站。所以,当我设置html5 pushstate以删除angularjs应用程序中的散列时,我从angularjs得到了一个nobase错误。因为 <base href=""> 需要启用angularjs html5 pushstate 我的问题是,既然我在这个drupal站点中有

我已经在drupal 7中创建了2个angular应用程序

"example.com"
"example.com/app1"
"example.com/app2"
example.com是我的主要网站。所以,当我设置html5 pushstate以删除angularjs应用程序中的散列时,我从angularjs得到了一个nobase错误。因为

<base href="">

需要启用angularjs html5 pushstate

我的问题是,既然我在这个drupal站点中有多个angualr应用程序,我如何为“/app1”和“app2”动态添加条件基url


有人能帮我吗?等待回应。Thanx.

您可以通过以下方式向站点添加基本元素:

YOUR_THEME_NAME_preprocess_html(&$variables, $hook) {
    $url = 'default';// default url
    if($application1) {// your condition for app1
        $url = 'app1';
    } elseif($application2) {// your condition for app2
        $url = 'app2';
    }
    $data = array(
      '#tag' => 'base',
      '#attributes' => array(
      'href' => $url,
      ),
    );
    drupal_add_html_head($data, 'base_href');
}

把它放到你的template.php中

这里没有人需要帮助吗?Thanx@Zaragoli。这很有效,而且很容易理解……:)