2013-04-26 87 views
3

我們正在用Chaplin的底層構建一個Trigger應用程序。對於開發的目的,如果我們可以使用我們資產的絕對路徑,那將會很不錯,如果我們可以使用我們資產的絕對路徑,那麼在觸發器中可以這麼做嗎?Trigger.io資源的絕對路徑?

回答

3

不幸的是,不同的平臺在觸發器上有不同的URL(由於它們有自己的特性和限制)。

如果你想獲得絕對路徑,你可以使用文件模塊和做線沿線的東西:

forge.file.getLocal("js/app.js", function (file) { 
    forge.file.URL(file, function (url) { 
     $('body').append('<script src="'+url+'"></script>'); 
    }); 
}); 

我不知道爲什麼絕對路徑雖然有用,我只會使用建議導航到新頁面的一個HTML頁面(index.html)比使用JavaScript更改dom更慢。在這種情況下,所有的相對路徑應該始終相同。

1

最簡單的事情可能是檢測是否僞造出現在您的index.html,並相應地加載JavaScript:

<script type="text/javascript"> 
    function addScript(src, callback) { 
    var tag = document.createElement('script'); 
    tag.type = 'text/javascript'; 
    tag.src = src; 

    tag.onload = callback; 

    document.getElementsByTagName('head')[0].appendChild(tag); 
    } 


    var vendor = "javascripts/vendor.js"; 
    var app = "javascripts/app.js"; 

    if(window.forge === undefined) { 
    vendor = "/"+vendor; 
    app = "/"+app; 
    } 

    addScript(vendor, function() { 
    addScript(app, function() { 
     require('initialize'); 
    }); 
    }); 
</script>