簡體   English   中英

從 ES6 模塊解析到絕對 url 的相對路徑(在瀏覽器中)

[英]Resolve relative path to absolute url from ES6 module (in browser)

如何在 ES6 模塊(在瀏覽器中)中解析到絕對 url 的相對路徑?

例如:

base-url.com/
    |-resolve
    |   |-resolveUrl.js
    |-dir
        |-dir1
            |-module1.js
        |-dir2
            |-module2.js

模塊1.js

import resolveUrl from "../../../resolve/resolveUrl.js"
resolveUrl("../dir2/module2.js") // return 'base-url.com/dir/dir2/module2.js'

resolveUrl的實現是什么?

base-url.com/可能不是該網站的域。 它可以是只存儲源的回購協議。

🎉 您現在可以使用to-absolute-url

它在底層使用stacktrace.js來獲取調用者函數的絕對路徑文件:

感謝@PatrickRoberts提出使用堆棧跟蹤的想法,感謝@jfriend00提供使用URL對象的提示。

怎么樣

const a = document.createElement('a')

function resolveUrl(path) {
  a.href = path
  return a.href // magic happens
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM