当前位置: 首页 > 面试题库 >

关键依赖项-依赖项的请求是Webpack表达式

姚星宇
2023-03-14
问题内容

我在我的angular应用程序中使用服务创建uibModal如下

function modal(modalConfig){
                  var modalInstance = $uibModal.open({
                  animation: true,
                  template: require("../a/b/xyz.html"),
                  controller: modalConfig.controller,
                  size: modalConfig.size,
                  controllerAs: modalConfig.controllerAs,
                  bindToController : true,
                  resolve: modalConfig.resolveObj

                });
            }

请注意行

 template: require("../a/b/xyz.html"),

我想在这样的地方使用变量

 template: require(modalConfig.templateUrl),

但是当我使用变量代替硬编码值webpack给我时

Critical dependencies:
83:22-54 the request of a dependency is an expression

我无法解决此错误。可能是什么原因呢?

我已使用node-express服务器进行连续webpack构建。我也查看了其他答案,但它们没有解决我的查询。


问题答案:

经过多次打击和试验后找到了解决方案。我所做的是:

template: require("../../scripts" + modalConfig.templateUrl + ".html")

假设条件

  1. 所有文件所在的根文件夹是 scripts
  2. 并说出该文件夹与写入函数的文件的相对路径../../scripts
  3. ../../scripts+ modalConfig.templateUrl+ ".html"将形成要使用的文件的正确路径。

强制性说明

  1. 始终写一些根文件夹的硬编码路径。不要将其放在变量中。所以这行不通

var context = "../../scripts" ; template: require(context + modalConfig.templateUrl + ".html")

基本路径(在实际路径的一部分中)必须进行硬编码以供基本参考,因为它可以帮助Webpack创建动态需求可能需要的所有模块的列表。

原因(来自webpack 文档),需要动态读取。



 类似资料:
  • 我给ivy添加了一个依赖项(我们称之为a)。在maven central中具有pom文件的xml。Ivy使用ibiblio来解析maven依赖项。添加到常春藤中的依赖项(A)。xml具有可传递依赖项(B)。到目前为止,一切都很好。传递依赖(B)的依赖(C)不能用常春藤来解决。 我在常春藤上定义了一个新的名字。如下所示的xml: 在B的pom文件中,C在编译和测试范围中定义如下: 当我在ivy的缓存

  • 最近,我发现了以下问题: 当我为我的项目设置依赖项管理时,我有一个child-pom,它使用具有依赖项的插件,我想要与在我的依赖项管理中声明的依赖项同步。 在根pom中,我在依赖项管理中声明: 在子pom中,我有一个插件需要gwt-user: 但是,如果我移除gwt-maven-plugin中使用的依赖版本,编译就会失败。 是不是还有别的办法可以实现呢? PS:在maven和maven插件中有一个

  • 有没有人在“ng serve”中面临低于警告的情况? 警告。/node_modules/@角/编译器/src/util.js10:24-31关键依赖:要求函数的使用方式是不能静态提取依赖ℹwdm:用警告编译。 Angular版本控制: 角CLI: 6.0.8节点: 8.11.3操作系统: darwin x64角: 6.0.9......动画,常见,编译器,编译器cli,核心,形式......超文本

  • 问题内容: 可以运行以了解模块任务的依赖性。有没有办法找到 buildscript依赖 的 传递依赖 ? 示例: 直接取决于: 可以在MVNRepository上看到。但是,这些工件有其自己的依赖性。有没有找到方法而无需手动遍历整个依赖树的方法? 为了澄清起见,我正在谈论的类路径由以下方式定义: 问题答案: 您可以使用以下命令: Udacity提供了很棒的Android Gradle 教程,但是您

  • 问题内容: 当我在项目中包含Express时,尝试使用webpack进行编译时总是会遇到这些错误。 webpack.config.dev.js 我试过了: 安装“ fs”,但不起作用 阅读某处以更改节点fs属性。它消除了错误警告,但是我认为这不是一个很好的永久解决方案。 node: { fs: “empty” } } 时间:2496ms资产大小块块名称bundle.js 761 kB 0 [已发射