执行下面这段代码时提示
Failed to load module script: Expected a JavaScript module script but the server responded with a MIME type of "". Strict MIME type checking is enforced for module scripts per HTML spec.(env: Windows,mg,1.06.2504010; lib: 3.8.11) SelectionRoleWin.js:1
ts中动态import的代码如下
import("./ui/win/createRoleWin/SelectionRoleWin.js").then(({ SelectionRoleWin }) => { SelectionRoleWin.Open(); });
微信开发者工具将JS编译为ES5后 SelectionRoleWin.js的内容如下
loadBabelMod(["@babel/runtime/helpers/createForOfIteratorHelper","@babel/runtime/helpers/classCallCheck","@babel/runtime/helpers/createClass","@babel/runtime/helpers/get","@babel/runtime/helpers/getPrototypeOf","@babel/runtime/helpers/inherits","@babel/runtime/helpers/createSuper","@babel/runtime/helpers/typeof"]);;define("puerts_minigame_js_resources/ui/win/createRoleWin/SelectionRoleWin.js", (function(require, module, exports, process){
"use strict";
...
编译前SelectionRoleWin.js的内容如下
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { Databases } from "../../../Databases";
...
运行时加载的地址为
http://127.0.0.1:11116/game/puerts_minigame_js_resources/ui/win/createRoleWin/SelectionRoleWin.js
工具中显示的加载状态
将项目直接导出webgl可以正常动态import没有出现上述问题
项目为Unity+Puerts开发,puerts为最新的2.2.2