Javascript NPM安装时jquery出现错误?定义是未定义的吗?
我用NPM安装了jquery,并试图将其合并到现有网页中 在控制台中,我看到以下错误: 在我的代码中,我有这样一个骨架:Javascript NPM安装时jquery出现错误?定义是未定义的吗?,javascript,jquery,node.js,npm,Javascript,Jquery,Node.js,Npm,我用NPM安装了jquery,并试图将其合并到现有网页中 在控制台中,我看到以下错误: 在我的代码中,我有这样一个骨架: <!DOCTYPE html> <html lang='en'> <head> <title></title> <link rel='stylesheet' type = 'text/css' href='css/' />
<!DOCTYPE html>
<html lang='en'>
<head>
<title></title>
<link rel='stylesheet' type = 'text/css' href='css/' />
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<meta charset="UTF-8">
</head>
<body>
<script type='text/javascript' src='node_modules/jquery/src/jquery.js'></script>
<script type= 'text/javascript' src='javascript/script.js'></script>
</body>
</html>
查看文件本身和控制台中的错误,我发现以下两种情况都有反映:
我不太熟悉define语句,但从我在谷歌上下爬行看到的情况来看。看起来我需要安装一个像webpack一样的捆绑包
但是我觉得简单地将jQuery添加到没有cdn的项目中是没有必要的
我找错树了吗?或者这是一个常见的问题?使用
npm install jquery
是如何在服务器上运行的
听起来这并不是你想要做的——而是你想在一个由你的节点服务器提供本地服务的网页上使用它。要做到这一点,请手动将其包含在站点文件结构中
- index.html
- /scripts
- jquery-3.2.1.min.js
然后在HTML中本地引用它:
<script src="scripts/jquery-3.2.1.min.js"></script>
我想你必须更清楚一点?如果您只想在客户端代码中包含jQuery,为什么要使用NPM来安装它?您所需要的只是到文件的静态路由?我不太了解如何使用NPM在网页上安装资源,但如果您只需要jQuery,为什么要使用NPM?您可以将jQuery作为静态文件托管,甚至可以使用CDN——将jQuery脚本标记替换为此标记以使用Google的CDN:
您应该包含一个文件版本(),或者使用模块工具,如Browserify或Webpack。但是NPM会为服务器端安装模块,如在Node中。当您想要包含一个脚本客户端时,您所要做的就是链接到该脚本。当然,使用Node时,您首先必须使用一些东西来获取指向静态文件的链接,通常称为静态路由,并且有很多模块可以这样做。问题是您从客户端引用服务器文件,Node_modules文件夹不能(或至少不应该)公开访问。如果你使用NPM,你应该考虑一个模块捆绑器,比如WebPACK。或者,看看像Bower这样的客户端包管理器来管理客户端依赖关系。我很笨,在洞穴里而不是在树上。谢谢你在一只名叫webpack的熊吃掉我之前救了我。当然,如果你没有合适的路线,这根本不起作用。默认情况下,节点不提供静态文件。我没有执行任何路由操作。但是直接使用script type='text/javascript'src='javascript/jquery-3.2.1.min.js'>
安装下载,然后运行我的http服务器不再显示错误。再说一次,我对它没有太多的阐述。只需几个dom遍历和事件侦听器。我将研究如何使用路线。如果我被卡住了,我可能很快就会回来问更多的问题