gpt4 book ai didi

typescript - 源映射(用于浏览器扩展)在 Chrome 75、Edge 77 中对我不起作用

转载 作者:行者123 更新时间:2023-12-03 17:29:34 29 4
gpt4 key购买 nike

我创建了一个用 .html 和 typescript 编写的示例浏览器扩展
这在 Chrome、Firefox 和 Edge(金丝雀)中运行良好。 Typescript 编译器从 .ts 文件生成了 .js 和 .js.map 文件。

我想调试源代码,在那里我可以在 typescript 代码中放置断点。我可以在 Firefox 中执行此操作,但不能在 Chrome 或 Edge 中执行。
Chrome 和 Edge 注意到要添加 .map 和 .ts 文件,我只能从源加载它们,断点对我不起作用。

我读了过去的文章。

  • Do source maps work for Chrome extensions?
  • Chrome Extension: Not loading source-maps
  • https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps
  • https://bugs.chromium.org/p/chromium/issues/detail?id=212374
  • https://developer.chrome.com/extensions/manifest/web_accessible_resources

  • 我在 manifest.json 中尝试了不同的设置。

    如果我找到方法,我可以用示例扩展名附加整个 zip。扩展中的整个文件列表是:background.html、background.js、background.js.map、background.ts、base.js、base.js.map、base.ts、content.js、content.js.map , content.ts, manifest.json, popup.html, popup.js, popup.js.map, popup.ts, readme.md, tsconfig.json, tsext16.PNG, tsext19.PNG,

    完整的 manifest.json 是
    {
    "manifest_version": 2,

    "name": "Typescript Sourcemaps in Browser Extensions",
    "version": "1",
    "description": "Sourcemaps with Extensions",

    "icons": {
    "16": "tsext16.png"
    },
    "permissions": [
    "activeTab"
    ],
    "browser_action": {
    "default_icon": {
    "16": "tsext16.png",
    "19": "tsext19.png"
    },
    "default_popup": "popup.html",
    "default_title": "Typescript example popup"
    },
    "background": {
    "scripts": [
    "base.js",
    "background.js"
    ]
    },
    "content_scripts": [{
    "matches": ["http://*/*", "https://*/*"],
    "js": [
    "base.js",
    "content.js"
    ]
    }],
    "web_accessible_resources": [
    "background.js.map",
    "background.ts",
    "*"
    ]
    }

    查看源 Pane 时,仅显示 .js 文件。
    在 .js 文件的顶部,有一条消息“检测到源映射”。
    但是,我不知道如何以我的方式加载 .ts 文件(例如 popup.ts)
    可以使断点工作。我可以在任何 .ts 文件中标记断点
    如果我从“文件系统”加载它,但执行不会停止并且文件
    选项卡中显示的名称有一个附加图标(可能意味着
    “仅用于查看,未连接到调试器”)类似于“新文档”。

    我可以在当前的 Firefox 67 中调试这个示例扩展。
    我可以将网页的源 map 获取到 Chrome 中。
    我尝试了 Windows 10 和 Windows 7,都是 x64。

    最佳答案

    这可能是 chrome bug, which I reported a year ago并且仍然开放。

    如需验证,请install chrome <=71并尝试调试。非常欢迎您在错误页面上与 chrome 开发人员互动。

    关于typescript - 源映射(用于浏览器扩展)在 Chrome 75、Edge 77 中对我不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56906915/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com