ES6:“从'jquery'导入$”真正意味着什么?

2024-03-07

我一开始以为它只是意味着加载 jQuery 模块并在名为 $ 的变量中初始化它。

但是,通过将 Atom 与 A​​tom-TypeScript 一起使用,我收到一条错误消息,指出“找不到模块‘jquery’”。尽管所有代码都可以在浏览器中运行,但看起来atom-typescript无法解析类似于 import x from y 的任何内容。

现在,查看 ES6 文档,我发现您从模块导入了类/函数。含义完全不同,例如:

import { Component } from 'angular2/core';

但是对于 jQuery 来说这意味着什么呢?

我可能将不同的问题混合在同一个问题中,但任何解释都会消除这种混乱,所以提前非常感谢:)


该声明import $ from jquery几乎相当于依赖注入。就像有人会写一样import React from 'react'允许自己访问文件中的 React 库,这样就可以编写import $ from jquery。 (以防万一,这里使用美元符号,因为 jQuery 及其方法是使用美元 (a.k.a.jQuery) 运算符。

至于抛出的错误,可能有以下几种:

  1. 如果您单独安装了 jQuery 作为依赖项包.json文件以及包含<script>来自 jQuery CDN 的标签,将会抛出此错误。如果您通过 NPM 使用 jQuery,那么import $ from jquery语法是正确/必要的。如果您打算通过 CDN 使用 jQuery(正如我推荐的那样),import声明是不必要的。 (因为您已将该脚本标记包含在索引.html,您可以在整个应用程序范围内访问 jQuery 及其库)。但是,不要两者都做。

  2. 另请注意,在以下情况下import { Component } from 'angular2/core';声明中,发生了一些略有不同的事情。也就是说,一个人正在导入命名导出 成分,根据(AMD规格 http://requirejs.org/docs/whyamd.html。在这种情况下,您可以将其视为在不需要整个库时仅导入较大的 Angular2 核心库的一部分。

为了确定起见,请检查您是否确实通过 CDN 或将其安装为 NPM 依赖项来授予自己对 jQuery 的访问权限。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ES6:“从'jquery'导入$”真正意味着什么? 的相关文章

随机推荐

  • 移动开发 - 本机 VS 跨平台 VS JavaScript [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • React Typescript:看起来您正在尝试使用 TypeScript,但没有安装 TypeScript

    我想创建一个 React 应用程序 并且想在这个应用程序中使用 typescript 首先我访问了 React 网站 以便使用 typescript 创建一个应用程序 我发现我必须先将此指令放入终端中 npx create react ap
  • 测试存储过程的最佳方法是什么?

    像许多要求所有访问都通过存储过程进行的公司一样 我们似乎有很多业务逻辑被锁定在存储过程中 这些东西实在是很难测试 而且有些已经变得愚蠢又长了 是否有人拥有一套最佳实践 可以让您更轻松地自信地测试这些东西 目前 我们维护着 30 个左右的 问
  • WPF 将文件从 Windows 资源管理器拖放到 TreeView 上

    我正在尝试制作一个非常简单的程序 或者我认为的程序 将文件从桌面 资源管理器拖放到 wpf 树视图上 此示例中的树视图很简单 因此我可以隔离遇到的拖放问题 我已经将所有地方的AllowDrop设置为True 但我仍然无法触发Drop或Dra
  • 如何在不离开页面的情况下更改浏览器中的 URL?

    我现在正在编写一个复杂的 AJAX 应用程序 整个网站都有干净的 URL 目前 PHP 为每个页面创建基本布局 但我不想在用户单击链接时离开每个页面 并且我不想在 URL 中包含哈希 因为它不会 与网站的其余部分不相符 我知道这个问题以前在
  • 从 2d numpy 数组的每一行中选择随机非零元素

    我有一个二维数组 a array 5 0 1 0 0 1 3 5 2 3 0 0 4 0 2 4 3 2 0 3 和一维数组 b array 1 2 1 2 2 which b 告诉我们要从数组的每一行中选择多少个非零元素a 例如 b 0
  • Notepad++ 缓存文件位置

    在最新版本的 Notepad 上 当应用程序关闭时 重新启动应用程序时会保留未保存的文件 我认为这些文件缓存在临时文件中 该文件的位置是什么 谢谢 我自己注意到了 并在里面找到了文件backup文件夹 您可以检查它在哪里使用菜单 设置 gt
  • 碰撞检测布料js

    我正在使用 Fabric js 我使用以下函数将图像放在画布上 当我单击画布时 图像会放置在该位置 我想知道是否有方法可以检查天气 那里已经存在某些东西我点击的位置 特别是如果有其他图像或没有 document getElementById
  • PHP 数组和 HTML 表单下拉列表

    我有一个名为 categories 的简单 PHP 数组 如下所示 Array Closed gt P1000 Open gt P1001 Pending gt P1002 In Progress gt P1003 Requires App
  • 如何使用 swift 调用 size_t os_proc_available_memory(void)

    我从来没有从 Swift 调用 Obj C 函数 而且我看到的大部分信息都是用于导入框架等 所以我很难理解如何获取我需要的数据 我想获得我的应用程序可用的总可用内存 我所能找到的就是https developer apple com doc
  • 如何使列表框水平滚动

    我有一个包含长字符串的列表框 The beginning is not all that relevant for the user which is why I d like to make the listbox scroll auto
  • 将登录表单与 Mechanize 结合使用

    我知道 Stackoverflow 上有与此非常相似的帖子 但我似乎仍然无法弄清楚我的尝试出了什么问题 login to the site mech get base URL do page l page form with action
  • winform的动态数据

    我玩过动态数据网站 winform 有类似的东西吗 如果没有任何东西可以对 winform 做同样的事情 那么问题是为什么不呢 我们有一个庞大的 ERP 应用程序 我们希望将其从 AS400 迁移到 Net Winform应用程序 我最初的
  • 宏元编程

    我知道这可能是坏的或不可能的 但由于这不是递归宏 我认为它应该是可能的 define FOO 15 define MAKE BAR x BAR x define MY FOO BAR MAKE BAR FOO 我希望 MY FOO BAR
  • 仅使用平移和旋转将一组 2d 点与另一组 2d 点对齐

    我正在 OpenCV 中工作 但我认为没有这方面的功能 我可以找到一个用于查找仿射变换的函数 但是仿射变换包括缩放 而我只想考虑旋转 平移 想象一下 我有两组 2d 点 假设每组恰好有 50 个点 例如 设 A x1 y1 x2 y2 x5
  • 颜色图中的 -Inf —— MATLAB 中低,Python 中高?

    我已将一些 MATLAB 代码移植到 Python 其中包括一个绘图实用程序 用于绘制 2D 矩阵 列表 中某些数据的颜色图 MATLAB 和 Python 绘图实用程序非常相似 因此我可以毫不费力地使它们在视觉上非常接近地匹配 我在这里使
  • getItemPosition 何时应考虑项目位置的更改?

    Android 的 PagerAdapter 类中 getItemPosition 方法的文档指出它是 当主视图尝试确定项目的位置是否已更改时调用 应该调用此方法来指示该适配器的项目组中的项目位置是否已更改 但是 它从未说明重写方法何时应考
  • 使用 sbt 将工件发布到 AWS CodeArtifact

    我正在尝试将工件发布到AWS CodeArtifact using sbt 但我遇到了一些麻烦 给定一个sbt项目 运行命令sbt publish包已上传到存储库 但仍保留在Unfinished状态 AWS CodeArtifact文档 h
  • 在远程机器上递归执行本地定义的python脚本

    我有兴趣编写一个脚本 以便该脚本的唯一副本驻留在我的本地计算机上 但该脚本在远程计算机上执行 可能远程计算机在其他远程计算机上执行该脚本 即 2 个或更多级别的分布式调用树中的递归 实现这一目标的一种方法是一步将脚本复制到远程计算机 然后在
  • ES6:“从'jquery'导入$”真正意味着什么?

    我一开始以为它只是意味着加载 jQuery 模块并在名为 的变量中初始化它 但是 通过将 Atom 与 A tom TypeScript 一起使用 我收到一条错误消息 指出 找不到模块 jquery 尽管所有代码都可以在浏览器中运行 但看起