gpt4 book ai didi

polymer - polymer.json 中的 extraDependencies 是什么意思, "!"是什么意思?

转载 作者:行者123 更新时间:2023-12-05 03:06:36 27 4
gpt4 key购买 nike

在我看到的默认 polymer.json 文件中:

"extraDependencies": [
"bower_components/webcomponentsjs/*.js",
"!bower_components/webcomponentsjs/gulpfile.js",
"manifest.json"
],

文档对此有点含糊:

Dependencies that the analyzer component of the Polymer build toolchain can’t discover, possibly because they're not statically imported, and that do not need to be bundled.

  • 为什么工具链无法发现它?
  • 如果无法发现它们,我们为什么需要包括它们?
  • 如果它们“不需要捆绑”,它们实际上做了什么?

最佳答案

  1. 如文档所述,工具链无法发现这些文件,因为它们不是静态导入。分析器只知道像这样的静态导入:

    <link rel="import" href="../bower_components/my-component.html">

    很可能是您的 bower_components/webcomponentsjs/*.js通过检查浏览器是否原生支持 Web 组件,如果不支持则加载 Web 组件 polyfill,从而动态 导入库。至于manifest.json , 它不是作为 HTML 导入导入的,而是作为 list 导入的,如下所示:

    <link rel="manifest" href="/manifest.json">

  2. 如果您使用 polymer build,则需要包含 extraDependencies对您的应用进行生产构建,以便 polymer-cli 知道将这些文件包含在您的构建中。

  3. Web 组件 js 文件不需要捆绑(注意它们仍然需要添加到build)因为你不需要当像 Chrome 这样的浏览器已经原生支持它时,希望每个应用程序都带有完整的 Web 组件 polyfill。不应捆绑 manifest.json,因为它是获取应用程序元数据所需的独立文件。

关于polymer - polymer.json 中的 extraDependencies 是什么意思, "!"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49041811/

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