javascript - 从 Meteor 中的导入文件夹渲染模板

标签 javascript templates meteor autosuggest

据我了解,imports的目的文件夹用于存储您导入到 main.js 的所有代码在 client文件夹。我正在尝试实现 easysearch:autosuggest我在我的 main.html 中得到了一个使用以下内容的基本示例在客户端文件夹上:

<body>

  <div id="render-target"></div>
    <div>
        {{>searchBox}}

    </div>
</body>

<template name="searchBox">

    <div class="autosuggest-component">
        {{> EasySearch.Autosuggest index=PlayersIndex}}
    </div>

</template>

在我的main.js在我正在导入的客户端文件夹中 App来 self 的'../imports/ui/App.js'并渲染它:

Meteor.startup(() => {

 render(<App />, document.getElementById('render-target'));

});

所以我尝试将模板粘贴到main.html中进入render()里面的功能App.js在导入文件夹中,但这给了我一个 unexpected token错误指向{{>searchBox}} 。我是 Meteor/node 的新手,我不太确定我做错了什么,也试图从结构的 Angular 理解我是否正确地做事。如果我必须构建我的应用程序客户端,那么导入文件夹有什么意义?我怎样才能使用 App.js 让它工作和render()

最佳答案

这里的问题是您将两个前端库混合在一起。

前端库是我们可以用来帮助我们构建应用程序的用户界面的工具。人们与 Meteor 一起使用的一些流行的有 Blaze、React 和 Angular.js

您使用的语法 {{>searchBox}} 是 Blaze 库用来呈现 Blaze 模板的语法。

但是,在您的 Meteor.startup() block 中,您正在使用 React 所需的代码。您还表明您一直在关注 React 教程。不幸的是,你不能混合这两者。

我建议你重新开始并follow this tutorial instead 。这与您已经做过的教程完全相同,但它是 Blaze 版本 - 它将与您一直使用的语法一起使用 - {{>searchBox}}

希望有帮助

关于javascript - 从 Meteor 中的导入文件夹渲染模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49179641/

相关文章:

javascript - 向 meteor 中的用户集合添加字段的正确方法

linux - Meteor 的 Linux 发行版之间的差异

php - IF 语句不改变变量的结果

javascript - 全屏在 Safari 中不起作用

javascript - 当 body 背景图像完成加载时显示警报

c++ - C++中模板选择的优先级

node.js - Meteor.js 在没有日志的情况下被杀死

javascript - 按钮未调用功能

c++ - 模板 :Function template specializations:Template argument deduction: -->can any one tell some more examples for this statement?

javascript - 从另一个网站导入 <template> 元素