gpt4 book ai didi

javascript - 如何在我的 Angular 2 项目中正确包含 "require"?

转载 作者:太空宇宙 更新时间:2023-11-04 16:04:35 25 4
gpt4 key购买 nike

我仍在尝试获取 the angular 2 code mirror module在我的 Angular 2 应用程序中工作。

我遇到了一些导入问题,我已详细说明 here ,我似乎已经过去了,但现在我遇到了一个新问题。

我最近的堆栈跟踪是这样的

Error: (SystemJS) require is not a function
@http://localhost:8050/node_modules/ng2-codemirror/lib/codemirror.module.js:8:14
ZoneDelegate.prototype.invoke@http://localhost:8050/node_modules/zone.js/dist/zone.js:232:17
Zone.prototype.run@http://localhost:8050/node_modules/zone.js/dist/zone.js:114:24
scheduleResolveOrReject/<@http://localhost:8050/node_modules/zone.js/dist/zone.js:502:52
ZoneDelegate.prototype.invokeTask@http://localhost:8050/node_modules/zone.js/dist/zone.js:265:21
Zone.prototype.runTask@http://localhost:8050/node_modules/zone.js/dist/zone.js:154:28
drainMicroTaskQueue@http://localhost:8050/node_modules/zone.js/dist/zone.js:401:25
ZoneTask/this.invoke@http://localhost:8050/node_modules/zone.js/dist/zone.js:339:25

Evaluating http://localhost:8050/node_modules/ng2-codemirror/lib/codemirror.module.js
Error loading http://localhost:8050/app/main.js

所以,我没有可用的要求...

这是我的node_modules结构

node_modules/
require/
bin/
require-command.js

还有我的 system.config.js

map: {
// a bunch of stuff listed in my previous post (https://stackoverflow.com/questions/41837321/how-do-i-properly-set-up-my-systemjs-config-for-use-with-ng2-codemirror/41841878#41841878)
'require' : 'npm:require',
},
packages: {
// some package definitions found in my previous post
'require' : {
format: 'global',
main: 'bin/require-command.js',
defaultExtension: 'js'
}
}

这是我“包含”需求的最佳尝试,但它对我不起作用。有谁知道如何使 require 可用于此 ng2-codemirror 模块?

编辑:

我去拿了一个 CDN 版本的 require

<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.2/require.js"></script>

并将其粘贴在我的index.html中...现在我似乎得到了不同的堆栈跟踪。

Error: (SystemJS) Module name "@angular/core" has not been loaded yet for context: _. Use require([])
http://requirejs.org/docs/errors.html#notloaded
makeError@https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.2/require.js:168:17
localRequire@https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.2/require.js:1433:44
requirejs@https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.2/require.js:1794:16
@http://localhost:8050/node_modules/ng2-codemirror/lib/codemirror.module.js:8:14
ZoneDelegate.prototype.invoke@http://localhost:8050/node_modules/zone.js/dist/zone.js:232:17
Zone.prototype.run@http://localhost:8050/node_modules/zone.js/dist/zone.js:114:24
scheduleResolveOrReject/<@http://localhost:8050/node_modules/zone.js/dist/zone.js:502:52
ZoneDelegate.prototype.invokeTask@http://localhost:8050/node_modules/zone.js/dist/zone.js:265:21
Zone.prototype.runTask@http://localhost:8050/node_modules/zone.js/dist/zone.js:154:28
drainMicroTaskQueue@http://localhost:8050/node_modules/zone.js/dist/zone.js:401:25
ZoneTask/this.invoke@http://localhost:8050/node_modules/zone.js/dist/zone.js:339:25

Evaluating http://localhost:8050/node_modules/ng2-codemirror/lib/codemirror.module.js
Error loading http://localhost:8050/app/main.js

看起来 Angular/Core 还不可用..?无论如何,这似乎是错误的做法。

最佳答案

我已经解决了这个问题。

我的代码镜像命名空间有点超出范围。

我是这样的

map : {
'ng2-codemirror' : 'npm:ng2-codemirror/lib'
},
packages : {
'ng2-codemirror' : {
main : 'index.js',
defaultExtension: 'js'
}
}

我需要它像这样

map : {
'ng2-codemirror' : 'npm:ng2-codemirror'
},
packages : {
'ng2-codemirror' : {
main : 'lib/index.js',
defaultExtension: 'js'
}
}

我认为通过在 map 部分中将文件夹声明为 ng2-codemirror/lib ,我错过了一些包含的依赖项或其他内容。

关于javascript - 如何在我的 Angular 2 项目中正确包含 "require"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41984246/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com