javascript - 如何以角度重新加载 index.html 的 head 标签内的脚本?
问题描述
我正在寻找很多解决方案,但我找不到一个。
我在. head
_ 我在里面写了函数。</body>
index.html
$(document).ready
当服务器启动时,脚本将起作用。但是在刷新页面之前,当我从不同的组件返回到使用脚本的组件时,脚本将无法工作。
所以我的问题是如何刷新index.html
?如果我这样做,整个应用程序都会刷新。如何预防?有什么不同的方法可以一次又一次地重用我的脚本代码吗?请给我一个解决方案。
我尝试js
在index.html
. 该时间函数将不会被调用。我尝试在生命周期钩子中编写js
代码。AfterViewInit
那也没有用。
解决方案
我希望你知道 $(document).ready 是如何工作的。一旦您的文档准备就绪,它将在您加载/刷新/重新加载页面时调用。
现在问题来了,脚本到底在做什么?如果它设置了一些全局范围,那么您应该抽象出服务中的逻辑,并在您要使用的每个组件中调用它。确保在组件加载之前初始化/调用脚本/逻辑。
export class DataService {
constructor() { }
myData() {
return 'This is my data!';
}
}
export class AppComponent {
constructor(private dataService:DataService) {
}
ngOnInit() {
this.dataService.myData();
}
}
或者,如果它像后台线程一样一直在后台运行,那么您可以在 AppComponent/ContainerComponent 中使用setInterval api ,它将继续在后台运行。这样,您的脚本将始终处于上下文中。
ngOnInit() {
this.id = setInterval(() => {
this.Init();
}, 1000);
}
我建议您分享您的问题陈述,人们会更容易提供适当的解决方案。
推荐阅读
- python - 解析数据的 txt ping 结果
- get - Loopback 4 复合查询字符串语法
- vue.js - 如何将 imageUrl 作为道具传递?
- node.js - 如何在使用nodejs api的反应应用程序中修复“对预检请求的响应未通过访问控制检查:它没有HTTP ok状态”错误
- html - 如何在 Angular/Ionic 框架中设置离子输入的样式?
- java - 为什么 TomEE 无法创建 JMS 连接工厂资源?
- webpack - 在 yarn 工作区中配置 webpack
- javascript - jQuery 函数在第一次点击时部分触发,在第二次点击时工作
- bash - 使用 sed 并循环输入字符串
- ajax - 使用 AJAX 重新加载 .twig 模板