【问题标题】:Converting HTML5 template to meteor.js, questions about JS init将HTML5模板转换为meteor.js,关于JS init的问题
【发布时间】:2015-04-03 17:01:20
【问题描述】:

我正在将模板转换为meteor.js,但在初始化JS 时遇到了困难。请记住我是一个新手程序员。

使用 iron:router 我将页面拆分为不同的模板,我的主页如下所示:

Router.map(function(){
this.route('home', {
  path: '/',
  layoutTemplate: 'fullLayout',
  yieldTemplates: {
    'menu': {to: 'menu'},
    'sidebar': {to: 'sidebar'},
    'footer': {to: 'footer'}
  }
});

原始 HTML 模板在每个 html 文件的末尾初始化一些脚本:

<script>
jQuery(document).ready(function() {    
   Core.init(); // init core componets
   Layout.init(); // init layout
   Page.init(); // this may be different / non-needed for different pages
});
</script>

我应该把这个脚本放在哪里,或者我应该怎么称呼它们? 有什么最佳实践吗?也许我不应该使用 jQuery(document).ready? 非常感谢您的帮助。

PS:显然,我可以从控制台手动初始化它们,或者将它们放在每个模板的末尾,但需要有更好的方法。

【问题讨论】:

    标签: javascript jquery html meteor


    【解决方案1】:

    在meteor中通过onRendered执行就绪函数。 Here 完整文档

    Template.myTemplate.onRendered({
       Core.init(); // init core componets
       Layout.init(); // init layout
       Page.init(); // this may be different / non-needed for different pages
    });
    

    【讨论】:

    • 在 fullLayout.onRendered 中添加了常用功能,在页面中添加了特定于页面的功能。像魅力一样工作,谢谢。
    猜你喜欢
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 2019-09-04
    • 1970-01-01
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多