使用grunt-wiredep后,阻碍组件的错误路径

时间:2015-11-05 14:14:47

标签: drupal gruntjs bower grunt-wiredep

我正在努力让Bower在我的Drupal项目中工作。在我的项目的根目录中,我有一个bower.json.bowerrc文件。 Bower组件正在sites/all/themes/mytheme/libraries中安装。

我已经设置了grunt-wiredep来自动将我的bower组件注入我的html.tpl.php文件中,如下所示:

wiredep: {
    task: {
        src: 'sites/all/themes/mytheme/templates/html.tpl.php'          
    }
}

使用grunt wiredep时,插件会将以下路径注入我的index.tpl.php文件:

<script src="../libraries/jquery/dist/jquery.js"></script>

它应该是这样的:

<script src="sites/all/themes/mytheme/libraries/jquery/dist/jquery.js"></script>

我尝试将directory: 'sites/all/thems/mytheme';添加到wiredep任务中,但后来我收到了我的依赖项未安装的错误。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

现在看来我已经开始工作了。这是我做的:

1)我忽略了路径的第一部分:../

2)对于html文件,我替换了对js和css依赖项的引用。我在路径中添加了sites/all/themes/mytheme/

以下是我的wiredep任务现在的样子:

wiredep: {
    task: {
        src: 'sites/all/themes/mytheme/templates/html.tpl.php',
        ignorePath: '../',
        fileTypes: {
            html: {
                replace: {
                    js: '<script src="sites/all/themes/mytheme/{{filePath}}"></script>',
                    css: '<link rel="stylesheet" href="sites/all/themes/mytheme/{{filePath}}"/>',
                }
            }
        }
    }
}