javascript - 如何在导入的 JavaScript 文件中使用 Node 模块?
问题描述
我对处理像这样的大量 JavaScript 项目还很陌生,所以我确信有很多事情我做的不对。
我有一个 Node 项目,其文件结构大致如下
project
|- index.js
|- hello.html
|- package.json
|- public
|- views
|- chart.js
我在本地服务器上使用node index.js
. 我已经安装了 express,并且index.js
正在使用它将请求路由'/'
到文件hello.html
。chart.js
在我的 html 文件中,我正在导入一个 js 脚本
<head>
<script type="text/javascript" src="/views/chart.js"></script>
</head>
如果我在其中编写代码chart.js
(如控制台日志记录),那么它会按预期工作,所以我知道我的文件已按我想要的方式连接。我的问题是我安装了一个节点模块(D3),我试图用它chart.js
来制作条形图,但我还没有让它工作。如果我放入const d3 = require('d3')
我的index.js
文件并尝试d3
在chart.js
文件中使用,我会得到一个 Uncaught ReferenceError 因为d3
未找到;另一方面,如果我const d3 = require('d3')
直接输入,chart.js
则require
找不到(根据我了解到的一些搜索,这是因为require
它是 Node 事物而不是 Browser 事物)。
有人可以告诉我在导入的 javascript 文件中使用外部库(如 D3)的简单方法吗?我是否需要弄清楚 RequireJS(这是对这个相关问题的官方回答,但对我的初学者来说似乎过于复杂)还是我可以重新构建我的项目/使用不同的方法使其以某种方式工作?
解决方案
推荐阅读
- arrays - 为什么这个函数会产生混乱的结果而不是计算康威的生命游戏?
- amazon-web-services - 可以通过 Hive 将数据从一个 s3 存储桶复制到另一个存储桶吗?
- postgresql-9.5 - 提取纪元和当前时间不正确
- unity3d - Unity 在生成的 C++ 中使用“-”(U+2212)作为负号
- javascript - 如何使按钮可多次点击
- c# - 如何在wpf中选择list veiw数据模板的项目?
- karate - 使用 .@ 读取 json 响应。功能文件失败
- apache-spark - 有没有办法使用火花结构化流读取 ActiveMQ 中先前排队的消息?
- java - 当我有一个单独的方法来搜索数据表时,Primefaces 数据表更改项目的 ID 错误(onrowedit)
- c++ - C++20 | std::is_constant_evaluate() 和 const 变量