javascript - 如何正确包含外部 JavaScript 库,以便其类在 VueJs 组件中可用?
问题描述
下面是 JavaScript 库的链接。
https://cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.min.js
通过在如下视图中包含这个库,我的 VueJs 组件可以使用它的d3
类和该类中的任何方法。
<html>
<body>
<div class="my-div-class"></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.min.js"></script>
<script src="{{ url (mix('/js/my-vuejs-component.js')) }}" type="text/javascript"></script>
</body>
</html>
在 VueJsComponent 中调用d3
类及其select()
方法,“my-vuejs-component.js”:
const el = d3.select('.my-div-class');
它工作正常,但我的 VueJsComponent 抱怨d3
没有定义。这是有道理的,因为d3
从未在 VueJeComponent 中定义过。
如何正确包含外部 JavaScript 库,以便其类或方法在 VueJs 组件中可用?
如果我们可以在 VueJsComponent 中实现,这样的事情会很棒:
<script>
// This line of code is not working, just give an idea if we can convert this library into a module and import its class inside VueJs component.
import d3 from "https://cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.min.js";
export default {
methods: {
test() {
const el = d3.select(".my-div-class");
}
}
}
</script>
具体来说,我正在使用 Laravel 6。
解决方案
您可以尝试在下面添加脚本吗?
const script = document.createElement('script');
script.src = 'https://cdnjs.cloudflare.com/ajax/libs/d3/3.0.0/d3.min.js';
document.body.appendChild(script);
推荐阅读
- .net - 我们如何使用管道将应用程序从 azure devops 部署到具有不同订阅和组织的 azure appservice
- spring - Spring boot:无法启动嵌入式Tomcat
- c# - 如何修复 ASP.NET MVC 中的“System.Data.SqlClient.SqlException”错误?
- powershell - 数组索引评估为空 - 查找行号并将其用作索引号
- oracle - 如何在 bi_publisher 中查找 xml 查询
- python - 我将如何迭代地将我的数组输入转换为整数
- php - 使用php发布“textarea”的值
- python - 在文件夹树的较高位置导入文件
- jenkins - 生成没有时间戳的 .trx 文件
- php - 如何修复 MYSQLi Select DB 需要 2 个参数