代码之家  ›  专栏  ›  技术社区  ›  Muhammad Raihan Muhaimin

了解require_tree加载顺序

  •  0
  • Muhammad Raihan Muhaimin  · 技术社区  · 9 年前

    亲爱的,我有以下文件夹angular_components

    Directory Structure

    现在在我写的这个文件夹中加载这个文件

    //= require_tree ./angular-components
    

    文件的加载方式如下

    <script src="/assets/angular-components/mapAutoComplete/autoCompleteAddressApp.js?body=1"></script>
    <script src="/assets/angular-components/mapAutoComplete/directive/controllers/googleAddressSuggestion.js?body=1"></script>
    <script src="/assets/angular-components/mapAutoComplete/directive/googleAddressSuggestion.js?body=1"></script>
    <script src="/assets/angular-components/mapAutoComplete/services/locationDataService.js?body=1"></script>
    <script src="/assets/angular-components/stripePayment/lib/angularPayment.js?body=1"></script>
    <script src="/assets/angular-components/stripePayment/services/stripeService.js?body=1"></script>
    <script src="/assets/angular-components/stripePayment/stripePaymentApp.js?body=1"></script>
    

    在mapAutoComplete目录中,根文件夹autoCompleteAddressApp中的文件。js加载在另一个文件之前,但是在stripePaymentApp的stripePayment中。js,它位于最后加载的根文件夹中。为什么会发生这种情况?在这两种情况下,如何确保在子目录文件之前加载根文件?

    1 回复  |  直到 9 年前
        1
  •  2
  •   Muhammad Raihan Muhaimin    9 年前

    原因是 require_tree 按字母顺序加载文件或文件夹,无论是文件还是文件夹。解决问题的一种方法是不使用 需求树 。另一种实现目标的方法是添加 _ 在要首先加载的文件之前加下划线。因为 需求树 将在其他文件之前加载以下划线为前缀的文件。因此,在您的案例中,您的目录结构如下所示

    Updated dir structure