使用grunt和processhtml更新基本href(不保留部分路径)

时间:2015-08-28 02:17:20

标签: javascript gruntjs

我尝试使用Grunt和processhtml来更新index.html中的function SaveData(data) { $.ajax({ url : url, type : "POST", async : false, data : data, success:function(result){ bootbox.alert('Ordered',function(){ }); updateTable(); } }); } $('#OKBtn2').click(function(){ $('#myModal2').modal('hide'); var itemid = $('#main-form2 .active').attr('id'), qty = $('#main-form2 #'+itemid+' td:eq(2)').text(), unit_price = $('#main-form2 #'+itemid+' td:eq(3)').text(), amount = $('#main-form2 #'+itemid+' td:eq(4)').text(); bootbox.confirm("Are you sure?","No","Yes",function(r){ if(r) { var data = saveme(); data.push({ name: "todo", value: "Add" }); //Use this in codition /*data.push({ name: "todo", value: "Save" });*/ console.log(data); SaveData(data); } else { } }); 。这增加了this question,似乎已经死了,没有一个公认的答案。那里的答案也不适合我。

我的index.html中的部分:

<base href="path">

出来的是:

<!-- build:[href] /ndt/dist-local/ -->
<base href="/ndt/web/">
<!-- /build -->

我想要出来的是:

<base href="/ndt/dist-local/web">

它添加了Web部分(没有斜杠)。我怎样才能做到这一点呢?

1 个答案:

答案 0 :(得分:1)

要解决<!-- build:<attr> <target> -->始终包含最后一部分的问题,您只需使用removetemplate的组合:

    <!-- build:remove -->
        <base href="/ndt/web/">
    <!-- /build -->

    <!-- build:template
        <base href="/ndt/dist-local/">
    /build -->

这不是最漂亮的选择,但它确实有效。如果您想让它更具动感,可以将dist-base包含为data - 选项:

Gruntfile config:

{
  options: {
    data: {
      distbase: "/ndt/dist-local/
    }
  },
  files: /**/
}

HTML:

<!-- build:remove -->
    <base href="/ndt/web/">
<!-- /build -->

<!-- build:template
    <base href="<%= distbase %>">
/build -->