【发布时间】:2018-06-07 02:22:57
【问题描述】:
我正在尝试托管可以放入非角度网页的独立角度元素。当我只有一个时,它工作得很好.. 但是当我在同一页面上加载两个或更多时,我收到此错误:
未捕获的错误:区域已加载。
我正在使用构建脚本将我的 dist 文件连接到一个 js 文件中......然后将其放入我的项目中
const fs = require('fs-extra')
const concat = require('concat')
const files = [
'./dist/elementsApp/runtime.js',
'./dist/elementsApp/polyfills.js',
'./dist/elementsApp/scripts.js',
'./dist/elementsApp/main.js',
]
fs.ensureDir('elements')
.then(() => {
console.log('success!')
concat(files, 'elements/include-me-somewhere-else.js')
})
.catch(err => {
console.error(err)
})
我只能在一页上拥有这些 js 文件之一。我知道 Angular 7 将使整个过程变得更容易,但我想知道我现在如何才能做到这一点。
我还尝试将导出的 js 文件包装在一个自执行函数中以尝试限制范围。不幸的是,它没有解决任何问题。
有什么想法吗?
人们似乎对角元素是什么感到困惑。如需澄清,您可以观看此视频https://www.youtube.com/watch?v=4u9_kdkvTsc。最后几分钟特别显示了一个角度元素被导出并包含在一个非角度页面上。我正在尝试在同一页面上包含多个元素。
【问题讨论】:
-
您在一个站点上使用 2 个 Angular 应用程序的目的是什么?
-
可能值得在 Angular 的 Gitter 频道上提问。构建 Angular 元素的人有时会在那里闲逛。
-
您是否正在这样做,以便您想要的每个组件都作为它自己的模块存在?
-
@MichaelSolati 是的,我是
-
@hamobi 我相信那是你的问题。每次导入都会带来 int zone.js 并且您会遇到问题。您应该查看一个模块,该模块可以导入您想要的元素并从那里开始。 (我可以拼凑一个快速的 repo tp 使这个过程更容易。无论如何我都需要这样做)。
标签: javascript html angular elements angular6