Stackblitz.com:在另一个模块中导入模块时出错

问题描述

Stackblitz.com 是创建小型实验项目的绝佳资源。然而,今天我遇到了一个问题。

我使用以下文件夹结构创建了一个 stackblitz 普通 ecmascript 项目

└── root
    ├── Resource
    │   ├── app.js
    │   ├── daylight.js
    │   └── localTexts.js
    ├── index.js
    └── index.html

现在,当我尝试从 localTexts.js 内的 ./Resources/app.js 导入时,应用程序崩溃并显示以下消息:

未定义模块未声明为 System.registerDynamic 依赖项 https://js-state-machine.stackblitz.io/~/Resource/app.js

another stackblitz project 中,此设置似乎运行良好。我尝试了几种解决方案都无济于事。也许我遇到了我的(许多)盲点之一或其他什么。

我无法在 SO 的代码段编辑器的限制范围内创建示例代码段,但这是代码的摘录

// ./Resource/localTexts.js
export default {
   dimmed: `dimmed`,remove: `remove`,add: `add`,... 
};

// ./Resource/app.js
import txt from `./localTexts.js`;
//              ^ solved! Don't use template literals here! 
export default (() => { 
    const appText = txt; // error occurs here
    ... 
    return { ... }
})();

这是app.js-file。有哪位高人能指教一下吗?

解决方法

问题很简单:我不小心使用了 template literal 作为导入路径(所以:import something from `./somefile.js` )。那只能是 String literal

现在,错误消息没有提到任何一个,显然 linter @Stackblitz 没有检测到它。嗯,问题解决了。感谢您的关注,很抱歉打扰您。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...