【问题标题】:Integrate wrapbootstrap theme with Meteorjs将 wrapbootstrap 主题与 Meteorjs 集成
【发布时间】:2015-03-29 17:09:04
【问题描述】:

我们有一个 wrap bootstrap 主题调用 ace admin。我们正在尝试将主题整合到meteorjs中。

ace admin文件夹的结构是:

  1. 资产
    • 头像
    • CSS
    • 字体
    • 图片
    • img
    • js
  2. 构建
    • 演示
    • 文件
    • 这里有几个 javascript 文件 (*.js)
  3. 分布
    • 头像
    • CSS
    • 字体
    • 图片
    • img
    • js

按照教程here 我将所有静态内容(如图像、字体等)移动到客户端文件夹、javascript 相关文件夹(资产、构建、dist 和所有相关内容)到公共文件夹。

我面临的问题 - Meteor 没有在公用文件夹中加载 javascript 文件。

有人可以帮忙吗?谢谢。

编辑: 好的。最后。感谢@Ethaan。在花了将近 2 天的时间找出问题所在 - 它与 javascript 加载依赖项有关。如果有人遇到类似问题 - 请确保先加载所有依赖项,然后再加载其他文件。

在上面提到的 url 中提供的链接中执行所有操作,然后将所有 js 文件夹文件移动到客户端。

【问题讨论】:

  • 你应该把JS代码放在/Lib文件夹中,因为lib文件夹是meteor首先加载的,尝试切换到lib文件夹
  • @Ethaan 实际上,js 文件有很多 .html 和其他图像依赖项。因此,我将包含 *.js、*.html 文件的整个文件夹移至 lib 文件夹。 Meteor 抛出与 html 文件相关的错误。我应该只移动“.js”相关文件夹吗?
  • 由于lib文件夹与客户端共享代码,我建议您避免在lib上使用html
  • 我没有看到评论但是是的,你应该在 /Lib 文件夹中加载 JS 代码,告诉我是否有效
  • @Ethaan 我将包含 javascript 文件的文件夹移动到根目录下的 lib 文件夹中。 Meteor 在控制台中抛出此错误“(STDERR) ReferenceError: window is not defined”

标签: meteor


【解决方案1】:

关于流星结构你应该知道一些,可以阅读docs

/lib 文件夹是您放置要在服务器/客户端之间共享的代码的位置,Routes,Collectios 之类的代码或其他代码 ho 可在 server/client 上使用(如果您放置使用 "window" 对象的代码,您将有问题,因为 windows 对象未定义到服务器。)

/publicfolder 是您放置图像、徽标、字体等的地方(您明白了)

/client 文件夹是您放置代码的地方,该代码仅供客户端使用

/server 此处是您将代码仅在服务器上可用的地方

我建议你阅读docs,这只是一个快速的解释。

【讨论】:

  • 记住client/compatibility 文件夹。尤其是在处理依赖于不被缩小或声明 var 的脆弱的第 3 方脚本时,这可以让您免于相当头痛。
猜你喜欢
  • 2014-08-30
  • 2015-11-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-23
  • 1970-01-01
  • 2013-04-16
相关资源
最近更新 更多