当前位置:  开发笔记 > 前端 > 正文

如何使用ES6语法导入jquery?

如何解决《如何使用ES6语法导入jquery?》经验,为你挑选了6个好方法。

我正在使用(JavaScript)ES6语法通过babel转换器和preset-es2015插件以及semantic-ui样式编写一个新的应用程序.

index.js

import * as stylesheet from '../assets/styles/app.scss';
import * as jquery2 from '../dist/scripts/jquery.min';
import * as jquery3 from '../node_modules/jquery/dist/jquery.min';

console.log($('my-app'));

的index.html








项目结构

.
??? app/
?   ??? index.js
??? assets/
??? dist/
?   ??? scripts/
?   ?   ??? jquery.min.js
??? index.html
??? node_modules/
?   ??? jquery/
?   ?   ??? dist/
?   ?   ?   ??? jquery.min.js
??? package.json
??? tests/

的package.json

  …
  "scripts": {
    "build:app": "browserify -e ./app/index.js -o ./dist/app.js",
    "copy:jquery": "cpy 'node_modules/jquery/dist/jquery.min.js' ./dist/scripts/",
    …
  },
  "devDependencies": {
    "babel-core": "6.3.x",
    "babel-preset-es2015": "6.3.x",
    "babelify": "7.2.x",
    "cpy": "3.4.x",
    "npm-run-all": "1.4.x",
    "sassify": "0.9.x",
    "semantic-ui": "2.1.x",
    …
  },
  "browserify": {
    "transform": [
      [ "babelify", { "presets": [ "es2015"]}],
      [ "sassify", { "auto-inject": true}]
    ]
  }

使用经典

http://plnkr.co/edit/a59ETj3Yo2PJ0Aqkxbeu?p=preview



6> craigmichael..:

如果可以帮助任何人,则将挂起javascript import语句。因此,如果库在全局名称空间(窗口)中对jquery具有依赖项(例如,引导程序),则将无法使用:

import {$,jQuery} from 'jquery';
window.$ = $;
window.jQuery = jQuery;
import 'bootstrap/dist/js/bootstrap.min';

这是因为在将jQuery附加到窗口之前,已启动并评估了引导程序的导入。

解决此问题的一种方法是不直接导入jQuery,而是导入一个模块,该模块本身会导入jQuery并将其附加到窗口。

import jQuery from './util/leaked-jquery';
import 'bootstrap/dist/js/bootstrap.min';

这里leaked-jquery看起来像

import {$,jQuery} from 'jquery';
window.$ = $;
window.jQuery = jQuery;
export default $;
export jQuery;

EG,https://github.com/craigmichaelmartin/weather-app--birch/blob/4d9f3b03719e0a2ea3fb5ddbbfc453a10e9843c6/javascript/util/leak_jquery.js

推荐阅读
kikokikolove
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有