1

In Meteor application's client folder I created js file which manipulates my template (client/index.html). It works fine when I run application locally in a browser. But when I deploy it to mobile phone my script does not work. Then I added console.log statements to my template and script and found that load order is different. In local browser it prints:

loading template
loading javascript

But in mobile phone it prints other way around:

loading javascript
loading template

Meteor documentation states that "HTML template files are always loaded before everything else". So why it is not true when I deploy my application to mobile phone?

4

1 回答 1

0

您可以通过移动东西来更改加载顺序,并将一些文件放在文件夹中以便稍后加载,即在您首先想要的文件后面。

Meteor 进行这种自动加载的方式非常棒,直到你遇到问题(比如这个),并且通过一些技巧,你可以让事情再次工作。

现在推荐的做法是不使用预加载,而是显式加载每个模块,然后您可以控制加载顺序。其中一部分是将您的文件放在文件/imports夹(或子文件夹)中,并使用import语句显式加载它们。您将一个文件放入 中/server,这是一个顶级文件,并执行相同的操作/client以加载所有客户端文件。

根据您的应用程序的大小,这可能意味着一些工作,但它使您的代码与文件在其他 javascript 生态系统中的导入方式保持一致。

于 2018-04-21T12:56:24.227 回答