es6模块转换

发布于 2022-09-02 15:03:22 字数 1221 浏览 23 评论 0

我的es6语法js文件es2015.js:

import $ from '../../bower_components/jquery/dist/jquery';
$(document).ready(function(){
    $('body').append($('<p>hello es6 module</p>'));
});

然后我是想通过babel将它转换为es5语法,也就是require([''],function(){});这种语法,而不是转换成define([],function(){});这种把这个文件弄成模块了。
babel编译后是这样:out.js

define(['../../bower_components/jquery/dist/jquery'], function (_jquery) {
    'use strict';

    var _jquery2 = _interopRequireDefault(_jquery);

    function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
            default: obj
        };
    }

    (0, _jquery2.default)(document).ready(function () {
        (0, _jquery2.default)('body').append((0, _jquery2.default)('<p>hello es6 module</p>'));
    });
   );

然后我直接将out.js通过

    <script src="../require.js"></script>
    <script type="text/javascript" src="../config.js"></script>
    <script type="text/javascript" src="../js/out.js"></script>

引入,浏览器报错怎么回事?
图片描述

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

萌辣 2022-09-09 15:03:22

求解,啊啊啊啊啊

浮华 2022-09-09 15:03:22

你应该需要 <script src="babel-runtime.js"></script>

相对绾红妆 2022-09-09 15:03:22

楼主这个问题最后解决了没有,我也遇到相同的问题,用import引用jquery转amd规范,转后

define(['exports', '../libs/jquery'], function (exports, _jquery) {
实际上有效的应该是下面这样的吧
define(['exports', 'jquery'], function (exports, _jquery) {

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文