流星何时重新编译.less文件

时间:2015-01-24 01:15:28

标签: meteor less

我正在使用meteor 1.0.3.1和nemo64:bootstrap 3.3.1_1而不是1.0.12。我创建了自己的.less文件,将一些(非常简单的)类添加到我的网站。

我发现当我更改.less文件时,它们不会自动重新编译。相反,我需要在客户端上重新加载应用程序以获取新的CSS。

根据我的理解,这有点打破流星反应原则,但我不确定它是否是预期的.less文件。任何人都可以清除它吗?

谢谢大家!

1 个答案:

答案 0 :(得分:1)

我想我找到了原因。在我正在进行的测试中,我遇到了竞争状态。所以没有真正的问题。我欠你们一些更多细节:

我想和sacha玩一点:旋转流星包。为此,我创建了一个模板,显示了我的应用订阅的一些数据。然后我使用这个包在加载数据时显示一个微调器。所以我在模板中添加了{{> spinner}}。

然后,当所有数据都加载到客户端时,我通过在其中添加我自定义的“隐藏”类来隐藏微调器。

Meteor.subscribe('posts',{
    onReady : function(){$('.spinner').addClass('hide');},
    onError : function(){alert('error!!');}
})

.hide {display:none;}

因此,我认为,有时候,当客户端上的订阅数据准备就绪时,模板还没有呈现,因此不能将任何类添加到微调器中。

要解决这个问题,我只是将类操作代码更改为Template..rendered回调并且工作正常

Template.testTemplate.rendered = function(){
    $('.spinner').addClass('hide');
};

所以是的,这是根本问题。有一点让我感到困惑的是,如果您使用开发人员工具(在Chrome中)检入浏览器源文件,那么CSS文件似乎不会在那里更新(尽管应用程序使用它们)。因此,我认为我的LESS文件处理不正确。

感谢您的兴趣。我希望这有助于某人。

干杯。