javascript - 确保导入的 JavaScript 文件在切换路由后仍能正常工作

标签 javascript jquery meteor iron-router

我现在正在开发一个项目,遇到了一些问题,我想与大家分享。我买了一个不是为 meteor 构建的主题。它实际上是一个纯 HTML,我正在采用 Meteor 方式进行调整。

据说要导入一些JS文件才能使其正常工作。在遇到一些麻烦之后,我设法以一种可以正确加载它们的方式导入它们:

Template.ApplicationLayout.onRendered(function () {
    import '../ui/components/js/core/source/App.js';
    import '../ui/components/js/core/source/AppNavigation.js';
    import '../ui/components/js/core/source/AppOffcanvas.js';
    import '../ui/components/js/core/source/AppCard.js';
    import '../ui/components/js/core/source/AppForm.js';
    import '../ui/components/js/core/source/AppNavSearch.js';
    import '../ui/components/js/core/source/AppVendor.js';
});

但是,每当我在路由之间切换时,它们就会停止工作,可能会在 HTML 上看到一些错误。我正在使用 Iron-router 来跟踪它。

我想知道是否有一种方法可以确保 JS 正确加载并且无论切换路由如何都不会停止工作。

提前致谢。

最佳答案

由于这不是meteor 特定的JavaScript,因此无需以这种方式导入它。您只需将这些文件添加到 Web 根目录中名为“public”的文件夹中,然后将脚本标记添加到布局的“head”部分,就像使用普通 HTML 一样。

在此处查看有关提供静态文件的类似问题:https://stackoverflow.com/a/21341394/4699406

关于javascript - 确保导入的 JavaScript 文件在切换路由后仍能正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38205565/

相关文章:

javascript - Angular : Why my watch is not working

javascript - 在外部单击时关闭选项卡

jquery - 使用 jquery 嵌入 CSS

javascript - 异步加载js文件和其他依赖的js文件

javascript - 从 meteor 外部位置获取图像

javascript - 多个粘性元素

javascript - Angular 6 patchValue 更新了值,但在我提交时却没有更新?

javascript - <body> 中的第一张图像大于 200 px 使用 Jquery

javascript - 从 Meteor js 中的每一行获取值

javascript - 如何保持reactiveVars模板的作用域?