【问题标题】:Including Previous Project in Angular 2 Website在 Angular 2 网站中包含以前的项目
【发布时间】:2017-11-26 00:03:29
【问题描述】:
不久前,我用 Javascript 创建了一个使用 HTML 画布元素呈现图像的游戏。我现在有一个使用 Angular 2 开发的个人网站,并且想知道将我的游戏嵌入我的网站的正确方法是什么。据我了解,我必须将游戏中的 Javascript 放在自己的文件中,因为 Angular 2 会从 HTML 中删除脚本标签(所以我不能直接将游戏放在 .html 文件中)。那么对于 .js 文件中的游戏逻辑和与组件关联的文件中的 HTML 元素,我应该如何将两者链接在一起?
【问题讨论】:
标签:
javascript
html
angular
web
html5-canvas
【解决方案1】:
您可以将脚本包含在 index.html 中,这样 Angular 就不会触及它。如果您需要在 TypeScript 代码中引用任何全局注入的对象,您可以添加“declare var [variableName]: any”。您可以获取更多信息here。
【解决方案2】:
您可以为每个视图加载一个脚本,并且在再次进入页面时会重新加载该脚本
constructor() {
document.getElementById("testScript").remove();
var testScript = document.createElement("script");
testScript.setAttribute("id", "testScript");
testScript.setAttribute("src", "assets/js/test.js");
document.body.appendChild(testScript);
}
希望对您有所帮助。