我有一个文件,通过模块名称modules.js导出模块中的所有导出(在索引文件中进行 ES6 导出/导入之后):default
export { default as a } from './a/a'
export { default as b } from './b/b'
...
export { default as y } from './y/y'
export { default as z } from './z/z'
Run Code Online (Sandbox Code Playgroud)
在我的中app.js,我想导入这个模块包。
我希望从 a...z 导入导出的变量,module.js以便我可以在app.js.
显然我不想这样做
import { a, b, c, d, ... , x, y, z } from './modules/modules'
Run Code Online (Sandbox Code Playgroud)
因为这非常冗长,每当我在 中添加模块时module.js,我还必须更改importin app.js。
我试过了
import * from './modules/modules'
Run Code Online (Sandbox Code Playgroud)
但变量在 …
我将 InversifyJS 与绑定和惰性注入装饰器一起使用,并且收到下一个错误:
找不到 serviceIdentifier: Symbol(ClassB) 的匹配绑定
这是代码:
inversify.config.ts
import { Container } from 'inversify';
import getDecorators from 'inversify-inject-decorators';
import { buildProviderModule, provide } from 'inversify-binding-decorators';
import Types from './types';
const container = new Container();
container.bind<MyType>(Types.MyType)
.to(MyType);
const { lazyInject } = getDecorators(container, false);
container.load(buildProviderModule());
export { container, lazyInject, provide };
Run Code Online (Sandbox Code Playgroud)
MyType.ts
import { inject, injectable } from 'inversify';
@injectable()
export class MyType{
constructor(
@inject(Q) private readonly Q: Q,
@inject(W) private readonly W: W,
@inject(E) private readonly E: E) { …Run Code Online (Sandbox Code Playgroud) typescript javascript-import inversifyjs javascript-decorators
我有以下 JavaScript,执行时没有任何错误或警告:
import * as jQuery from './node_modules/jquery/dist/jquery.min.js';
window.$ = jQuery;
Run Code Online (Sandbox Code Playgroud)
...但是当我尝试使用我的新$()功能时...
$(document).ready(function() {
console.log('Hello!');
} );
Run Code Online (Sandbox Code Playgroud)
...我收到此错误:
TypeError: $ is not a function
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我面临错误:
TypeError: Failed to resolve module specifier '../static/myJson.json'.
The base URL is about:blank because import() is called from a CORS-cross-origin script.
Run Code Online (Sandbox Code Playgroud)
在运行时,当页面在浏览器中加载并尝试动态访问import文件时json。
这段代码:
// myCode.ts
export const MY_JSON_FILEPATH = "";
window.addEventListener("load", async () => {
try {
const myData = await import(MY_JSON_FILEPATH); // replaced by rollup-replace
} catch (error) {
console.warn(`Unable to load json file`, error);
return;
}
}
Run Code Online (Sandbox Code Playgroud)
由 html 模板加载:
// myCode.ts
export const MY_JSON_FILEPATH = "";
window.addEventListener("load", async () => {
try { …Run Code Online (Sandbox Code Playgroud) 我知道我们可以使用,import {x} from "./file"并且将从同一个目录中的file.js导入变量x。如果目录中存在具有相同扩展名的同名文件,该如何处理?
例如,如果在同一目录中有file.js和file.ts,将如何import {x} from "./file"表现?是否取决于javascript版本?
我尝试遵循这篇文章的建议,并尝试使用以下代码导入 JS 模块。
\n总之,我试图将一个类从该类导入j.js到该类中f.js,并在该类的实例上调用一个函数。
我只是不断收到以下错误。所有文件都位于同一目录中。
\nUncaught SyntaxError: import declarations may only appear at top level of a module\n\nModule source URI is not allowed in this document: \xe2\x80\x9cfile:///C:/Users/thedr/grade-calc/nuncio/j.js\xe2\x80\x9d.\n\nCross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at file:///C:/Users/thedr/grade-calc/nuncio/j.js. (Reason: CORS request not http).\nRun Code Online (Sandbox Code Playgroud)\n <html>\n <body>\n <script>\n function f() {\n alert("IT WORKS")\n }\n </script>\n\n <script src="f.js"></script>\n <script src="j.js" type="module"></script>\n </body>\n </html>\nRun Code Online (Sandbox Code Playgroud)\nimport Fudge from "./j.js"\n\ntest …Run Code Online (Sandbox Code Playgroud) require()在 JavaScript/Node.js 中,每次导入其他模块时是否都会执行相同的文件?
如果是,我如何在一个文件中包含一个数组,并从另一个 JS 文件追加/更新其中的值?例如,我在一个文件中有一个数组,并且我正在从多个文件更新该数组,并且我希望所有文件仅与更新后的数组进行交互。我怎样才能实现这个目标?
我正准备通过babel使用ES6模块导入/导出,但在本文中遇到了这个令人困惑的声明.
它指出:
ES6的的功率
import和export用结合require()的方法,使我们的自由,所有的客户端代码的组织成模块,并在同一时间写使用JavaScript的新版本的所有功率的代码.
这使它听起来像ES6的系统,并require()提供两种不同的目的,从而使这种babel/browserify方法成为最好的方法.我的理解是他们都做了同样的事情,只是有点不同.有人可以帮忙解释一下吗?
javascript browserify ecmascript-6 babeljs javascript-import
javascript ×6
ecmascript-6 ×4
es6-modules ×4
babeljs ×1
browserify ×1
cors ×1
inversifyjs ×1
jquery ×1
module ×1
node.js ×1
npm ×1
requirejs ×1
rollupjs ×1
typescript ×1