RequireJS如何将“ tippy.js”映射到路径

问题描述

我的打字稿模块包含:import tippy from "tippy.js";,其中“ tippy.js”是安装在node_modules中的软件包。 使用module: "amd"对其进行编译会正确生成

define(["require","exports","tippy.js"],function (require,exports,tippy_js_1) {...

在运行时,加载失败,因为RequireJS尝试从服务器根目录加载不存在的文件“ tippy.js”,而不是查看在以下位置设置的路径:

requirejs.config({paths: {"tippy.js": "../node_modules/tippy.js/dist/tippy-bundle.umd"}});

我也尝试过地图部分,但没有成功:

    map: {
        "tippy.js": {
            "@popperjs/core": "popper","tippy.js":       "../node_modules/tippy.js/dist/tippy-bundle.umd"
        },

除了将程序包更改为具有更普通名称的程序包之外,还有什么我可以尝试的吗? 谢谢! 马里奥

解决方法

我忽略了packagesrequirejs.config({})部分的功能。如果我定义:

packages: [{
    name: "tippy.js",location: "../node_modules/tippy.js",main: "dist/tippy-bundle.umd"
}]

程序包加载成功,没有问题。