Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用ES6语法和browserify导入jQueryUI?_Javascript_Jquery Ui_Ecmascript 6 - Fatal编程技术网

Javascript 如何使用ES6语法和browserify导入jQueryUI?

Javascript 如何使用ES6语法和browserify导入jQueryUI?,javascript,jquery-ui,ecmascript-6,Javascript,Jquery Ui,Ecmascript 6,我正在尝试使用ES6语法将JQuery和JQuery导入到一个项目中,使用Babel和Browserify打包代码。从我所了解到的情况来看,问题在于jQueryUI期望将JQuery定义为一个全局变量。我尝试在导入jQuery之后和导入jQuery UI之前设置全局变量,如下所示: import { default as $, default as jQuery} from 'jquery'; wiindow.jQuery = jQuery; window.$ = $; import 'jq

我正在尝试使用ES6语法将JQuery和JQuery导入到一个项目中,使用Babel和Browserify打包代码。从我所了解到的情况来看,问题在于jQueryUI期望将JQuery定义为一个全局变量。我尝试在导入jQuery之后和导入jQuery UI之前设置全局变量,如下所示:

import { default as $, default as jQuery} from 'jquery';

wiindow.jQuery = jQuery;
window.$ = $;

import 'jquery-ui';
但browserify似乎将所有导入放在了文件的顶部,因此定义全局变量太晚了。我知道webpack提供了一种定义全局的方法,但是否有一种解决browserify的方法?

试试这个

window.$ = window.jQuery = import $ from "jquery";


如果您发现了一个可以作为ES6模块使用的jQuery版本,为什么没有一个用于jQuery UI的版本呢?它真的应该声明它自己对jQuery的依赖关系。这就是你的想法。我使用npm安装了JQuery和JQuery UI。我对JS开发有点陌生,但根据我的研究,JQuery设计用于节点模块系统,这显然是browserify模拟的,而JQuery UI设计用于AMD模块标准。你会认为这些项目会相互协调。我已经能够让var$=global.$=require('jquery')工作,这并不可怕,但这并不是我想要的。我要调查一个叫deamdify的东西。我忍不住想,这东西比它应该的要难。第一个是语法错误,第二个就是OP已经存在的非工作版本。
import { default as $, default as jQuery} from 'jquery';
window.jQuery = windows.$ = jQuery;