我的问题是我的内容根本没有在特定的设备/浏览器上显示,而只在捆绑后显示。无论设备或浏览器是什么,wep app都可以在调试中正确显示(从meteor运行)。
编辑:我可以在受影响的设备/浏览器上看到导航栏和页脚,但不能看到yield
迄今为止已知的受影响的设备/浏览器是Nexus 4上的Chrome(不是Note3)和Note 3上的Dolphin。
Dev环境是Windows,prod是Linux。
我还尝试直接在服务器上通过meteor运行应用程序,问题不在这里,但即使我从服务器捆绑应用程序也回来了。
有什么可以导致这种情况和/或如何解决这个问题?
编辑2
我终于可以确认它是客户端漏洞。 以下是设备上Chrome控制台的错误
Exception from Deps recompute function: ReferenceError: Lists is not defined
at Object.Template.layout.helpers.lists (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:31:25567)
at http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:10:5624
at Object.e.call (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:27:20793)
at HTML.DIV.HTML.UL.UI.Each.UI.block.e [as __sequence] (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:27:28178)
at http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:10:4102
at http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:9:3419
at a (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:2:4791)
at n.extend._compute (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:2:5846)
at new e.Computation (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:2:5183)
at Object.n.extend.autorun (http://example.com/8f6c9295e0ef7b38e613447d9a44d5c7af448efa.js:2:7042)
但列表集 已定义,发布和订阅。最奇怪的是,通过Meteor调试时一切运行良好
答案 0 :(得分:1)
在我的特定情况下,集合定义位于应用程序根目录的/collections
文件夹中。这导致应用加载了 /client
文件夹之后的,但仅在部署后仅在部分设备/浏览器上加载!
要解决这个问题,我只需将/collections
文件夹移动到/lib
,然后将其再次捆绑,将其推送到服务器,无论设备/浏览器是什么,现在一切都能正常运行。