如何让Angular CLI生成* .less文件

时间:2018-01-07 18:31:46

标签: angular-cli

当我使用Angular 5 CLI生成新组件(例如ng g c my-component)时,它会创建4个文件(html,css,ts,spec.ts)。我更愿意(或者代之以)为组件创建一个* .less文件。我不确定Angular存储用于生成新文件的文件列表或模板的位置。我可以添加自己要由CLI生成的文件类型吗?

4 个答案:

答案 0 :(得分:5)

你可以采取一些措施来实现这一目标。

首先,在创建新项目时,使用--style选项将默认样式格式设置为 less

ng new new-app --style=less

这样,当您创建新组件时,创建的默认样式格式文件将更少(.less文件)。

其次,如果您有现有的应用程序,则可以更改 .angular-cli.json 中的默认值。为此,请在文件中找到defaults部分,并将styleExt值更改为less。见下文。

"defaults": {
  "styleExt": "less", 
  "component": {}
}

这就是它的全部!

答案 1 :(得分:1)

对于 Angular 8

angular.json上:

"@schematics/angular:component": {
  "styleext": "less"
}

答案 2 :(得分:0)

对于Angular 8,请在angular.json中使用以下设置

"@schematics/angular:component": {
          "style": "less"
        }

示例:

 "YOURAppName": {
      "projectType": "application",
      "schematics": {
        "@schematics/angular:component": {
          "style": "less"
        }
      },
      "root": "",
      "sourceRoot": "src",
      "prefix": "app",

答案 3 :(得分:0)

对于 Angular 9 及更高版本,请改用“style”(“styleext”或“styleExt”)

from itertools import groupby class HorseNutritionListSerializer(serializers.ListSerializer): def to_representation(self, data): ret = super().to_representation(data) return {key: list(group) for key, group in groupby(ret, key=lambda x: x['feeding_time'])} @property def data(self): ret = serializers.BaseSerializer.data.fget(self) return serializers.ReturnDict(ret, serializer=self) class HorseNutritionSerializer(serializers.ModelSerializer): nutrition_measurement_id = serializers.ReadOnlyField(source = 'nutrition_measurement.name') nutrition_type_id = serializers.ReadOnlyField(source = 'nutrition_type.name') class Meta: model = HorseNutrition fields = ['id', 'nutrition_measurement_id', 'nutrition_type_id', 'feeding_time'] list_serializer_class = HorseNutritionListSerializer

class HorseNutritionView(APIView):
    
    def get (self, request, format = None):
        #id = int(request.GET.get(self.lookup_url_kwarg))
        id = 1
        if id != None:
            queryset = HorseNutrition.objects.filter(horse_id = id).order_by('feeding_time')
            serializer = HorseNutritionSerializer(queryset, many = True)             
            return Response(serializer.data)
        else:
            return Response(status = status.HTTP_400_BAD_REQUEST)