Я в основном бэкэнд-разработчик, но я пытаюсь модернизировать свои возможности JavaScript.
Я написал тестовый файл в Es6 следующим образом:
export const TestA = () => {
console.log("test A");
}
export const TestB = () => {
console.log("test B");
}
Итак, я хочу установитьчтобы я мог импортировать TestA и TestB в сценарии по мере необходимости, например так:
import { TestA } from '../../includes/Sample.js';
$(function() {
TestA();
});
Так что, на мой взгляд, второй сценарий должен импортировать TestA и игнорировать TestB, когда я запускаю его через транскриптор, такой как этот, вgulp:
return browserify({
entries: [path.join(pathToCompileFoler, file)]
})
.transform(babelify.configure({
presets: ['es2015'],
ignore: /(bower_components)|(node_modules)/
}))
.bundle()
.on("error", function(err) { console.log("Error : " + err.message); })
.pipe(source(file))
.pipe(gulp.dest(path.join(pathOutput, "/")));
Однако, когда я смотрю на то, что создается этой транскрипцией, я вижу, что и TestA, и TestB записаны в мой недавно расшифрованный файл:
(function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
var TestA = exports.TestA = function TestA() {
console.log("test A");
};
var TestB = exports.TestB = function TestB() {
console.log("test B");
};
},{}],2:[function(require,module,exports){
'use strict';
var _Sample = require('../../includes/Sample.js');
$(function () {
(0, _Sample.TestA)();
});
},{"../../includes/Sample.js":1}]},{},[2]);
МоемуНе забывайте, одно из преимуществ es6 - это тряска деревьев (принимая только те биты, которые мне нужны)
Я что-то здесь упускаю или это ожидаемое поведение?