为了账号安全,请及时绑定邮箱和手机立即绑定

如何解决来自两个独立 Javascript 库的类型名称冲突?

如何解决来自两个独立 Javascript 库的类型名称冲突?

回首忆惘然 2022-12-29 16:36:16
首先让我说,我主要是一名 C# 程序员,很少涉足 JavaScript。我可以自己编写一些 JS 代码,只要它大部分是普通的。我可以处理 jQuery 和奇怪的自给自足的第 3 方库,但是当 React、Angular、Bootstrap 和其他人出现时,我无法从湿纸袋中编写代码。我也不习惯使用 npm 或任何其他类似的包管理器。这从来都不是我的工作或兴趣,所以我从未去过那里。每当我编写一些 JS 代码时,我都会在我的<script>标签中引用所需的 JS 文件,然后尽可能直接使用它们。我目前正在创建一个非常简单的概念验证 Web 应用程序,它的客户端部分迟早会由有能力的人重建。但与此同时,我必须提供最基本的功能,这些功能将作为下一个团队接管的粗略指南,无论何时。我选择了两个库,当单独使用时,每个库看起来都易于使用并且可以完成工作。但是当我尝试在同一页面上一起使用它们时,我遇到了一个问题:它们都使用相同的名称作为它们的主要类型,而且我似乎无法在它们之间消除歧义。这些是图书馆:JSON 编辑器JSON 模式表单生成器它们都声明了一个名为 的类型JSONEditor,只要我不同时引用这两个库,我就可以使用它。到目前为止,我已经尝试通过使用模块和import使用不同名称的类型来解决这个问题,但它没有用......我在控制台中收到了一堆关于“找不到导入”和“e 不是”的错误定义”,这让我觉得我在处理这个错误。如果可能的话,我将如何使用纯 JS 解决这个问题?
查看完整描述

1 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

代码编辑器(JSON 编辑器,而不是 JSON Schema Form Builder)的维护者在过去已经解决并关闭了一个关于这个问题的问题:https ://github.com/josdejong/jsoneditor/issues/270


他推荐的解决方案如下所示:


<script src="assets/jsoneditor/dist/jsoneditor.min.js"></script>

<script>

  var JSONEditorA = JSONEditor;

</script>

<script src="assets/json-editor/dist/jsoneditor.min.js"></script>

<script>

  var JSONEditorB = JSONEditor;

</script>

如果您必须使用脚本标签,这可能是可行的方法。


查看完整回答
反对 回复 2022-12-29
  • 1 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信