问题描述
我有一个index.js文件,可以使用E2015成功导入基于类的文件,如下所示:
import { Handler } from './Library/Transform/Handler.js';
但是由于兼容性问题,我现在必须将该文件转换为ES5,但是随后我开始在浏览器中收到此错误:
Uncaught SyntaxError: The requested module './Library/Transform/Handler.js' does not provide an export named 'Handler'.
可以,但是我不确定如何导入它,我只是尝试了一个破损的AMD,像这样:require('./Library/Transform/Handler.js');
,但是我得到了完全相同的错误。
exports.Handler = Handler;
return exports;
}({}));
因此它正在导出Handler
,我也尝试过:
var Handler = require('./Library/Transform/Handler.js');
我继续遇到相同的错误。
import commonjs from "@rollup/plugin-commonjs";
import resolve from "@rollup/plugin-node-resolve";
import babel from "rollup-plugin-babel";
import { uglify } from "rollup-plugin-uglify";
import banner from "rollup-plugin-banner";
var git = require("git-rev-sync");
var buildVer = process.env.BUILD || 0;
var currRevision = git.long();
export default {
input: ["./src/Handler.js"],output: [
{
file: "./dist/Handler.js",format: "iife",name: "version",},{
file: "./dist/Handler.min.js",plugins: [uglify()],],plugins: [
banner(
"\t<%= pkg.name %>\n\t<%= pkg.version %>-" +
buildVer +
"\n\t" +
currRevision +
"\n\t" +
new Date().toString() +
"\n\t<%= pkg.description%>"
),resolve(),commonjs(),babel({
extensions: [".js"],exclude: ["node_modules"],presets: [
[
"@babel/preset-env",{
targets: "ie 11",modules: false,useBuiltIns: "usage",corejs: { version: 3,proposals: true },}
]
]
})
]
};
未转译的Handler.js
文件导入语句具有一些部分,我们可以使用这些部分来简化开发这些表单时的工作流程,如下所示:
import { XHandler } from './xy/js-es6/x-es6.js';
import 'promise-polyfill/src/polyfill';
import getHelp from './_Partials/getHelp.11ty.js';
import pwd from './_Partials/pwd.11ty.';
import challengeMe from './_Partials/challengeMe.11ty';
import lockedOut from './_Partials/lockedOut.11ty';
import infoSec from './_Partials/infoSec.11ty';
import lockedOutAgain from './_Partials/lockedOutAgain.11ty';
const debug = false;
export class Handler extends XHandler {
constructor() {
super();
console.log('Handler:Constructor');
}
createFormSession(formId,payload) {
console.log('Handler:createFormSession');
return new FormSession(formId,payload);
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)