当前位置: 首页 > 面试题库 >

reactjs,bootstrap和npm导入-jQuery未定义

公良英资
2023-03-14
问题内容

我正在尝试在我的react应用中使用bootstrap,但这给了我一个Error: Bootstrap's JavaScript requires jQuery。我已经导入了jquery并尝试从其他帖子尝试以下操作:

import $ from 'jquery';
window.jQuery = $;
window.$ = $;
global.jQuery = $;

但是,我仍然会收到not defined错误消息。

解决此问题的唯一方法是将

  src="https://code.jquery.com/jquery-3.2.1.min.js"
  integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4="
  crossorigin="anonymous"></script>

进入index.html

有没有一种方法可以导出jquery或引导程序能够检测/读取它?

我通过以下方式致电我的引导程序

import bootstrap from 'bootstrap'

问题答案:

const bootstrap = require('bootstrap');

我尝试使用“ create-react-app”构建一个项目,发现导入模块的加载顺序与导入顺序不同。这就是boostrap无法找到jquery的原因。通常,您可以在这种情况下使用“要求”。它适用于我的电脑。

import $ from 'jquery';
window.jQuery = $;
window.$ = $;
global.jQuery = $;
const bootstrap = require('bootstrap');
console.log(bootstrap)

相关事项:

imports 悬挂

经过更多研究后,我发现:

进口货物已吊起!根据规范的ModuleDeclarationInstantiation
在运行任何代码之前,将加载所有从属模块。
此代码将没有错误,并且可以工作:

localFunc();

import {myFunc1} from 'mymodule';

function localFunc() { // localFunc is hoisted
    myFunc1();
}

imports 应该先走

值得注意的是,导入是悬挂式的,这意味着导入的模块将在任何语句散布在它们之间之前进行评估。将所有导入文件放在一起放在文件的顶部,可以防止由于这部分规范而引起意外。

来自https://github.com/benmosher/eslint-plugin-
import/blob/master/docs/rules/first.md



 类似资料:
  • 我创建了一个简单的webapp,在Rails3.2.17应用程序中集成了bootstrap 3,遵循stackoverflow上的这一过程,因此不使用gem,而是手动复制相关应用程序目录中的bootstrap文件。 即使我有,在我的gem文件中: 我仍然可以看到,用chrome检查我的网页,错误:

  • 我想为我的网站使用bootstrap(带node.js)。但我有以下错误: /var/www/node_modules/bootstrap/js/transition.js:59}(jQuery);^referenceerror:jQuery.(/var/www/node_modules/bootstrap/js/transition.js:59:3)在module.(/var/www/node_

  • 问题内容: 我有一个简单的函数,它仅将翻译后的消息从服务器返回到客户端。但是,当我将结果传递给var时,结果显示为未定义。 结果- >未定义(错误) 当我查看标题时,它会给我: 为什么我仍然得到不确定的结果? 问题答案: 您可以将回调函数传递给该函数 然后调用:

  • 问题内容: 我只需要使用jQuery动画,请不要提及过渡。 这是我的代码库 如您所见,安装组件时,我可以添加一个很棒的动画,但是不能像代码中提到的那样用动画来卸载该组件。 任何想法如何仅使用jQuery来做到这一点?和Reactjs组件生命周期? 问题答案: 这是我通过过于简单的演示来解决此问题的尝试。 jsFiddle 。 JavaScript: 正如你已经想通了,这是不是很难任何动画子组件 中

  • 问题内容: 当前,在Sass文件中,我们具有以下内容: 这很不好,因为我们实际上不确定路径:可能是,因为npm是如何安装东西的。 在Sass中,有没有一种方法可以搜索直到找到node_modules?甚至是通过npm包含Sass的正确方法? 问题答案: 如果您在2017年寻找方便的答案并使用Webpack,这是我发现的最简单的方法。 假设您的模块路径如下: 然后,您可以在主要的scss文件中使用:

  • 问题内容: 我有一个简单的jquery click事件 以及在site.master中定义的jquery引用 我检查了脚本是否已正确解析,可以在Firebug中查看标记并直接查看脚本,因此必须找到我。但是,我仍然得到: $未定义 而且没有一个jQuery的作品。我还尝试了$(document).ready和jQuery等的各种变体。 这是.net 3.5上的MVC 2应用程序,我确定我真的很密集,