안드로이드 스튜디오에서 Flutter 개발로 freezed 용 Live Template 준비
Live Template 추천
Dart에는 데이터 클래스가 없기 때문에 JSON을 직렬화 및 직렬화하지 않으면 고리 코드가 필요합니다.
그래서 freezed 을 사용합니다만, 좀처럼 기억하는 코드가 아니므로, Live Template를 사용합시다는 이야기입니다.
Live Template 설정 위치
환경 설정 Android Studio > Preferences...
의 Editor > Live Templates
에서 Flutter를 선택하고 "➕"버튼을 클릭합니다.
설정 내용
설정 항목
설정 내용
비고
Abbreviation
freezed
보완 할 때 입력하는 문자열이므로 스스로 알기 쉬운 것을
Description
Create freezed class
이것도 스스로 알기 쉬운 것을
템플릿 텍스트
템플릿 문자열
아래 (Template text) 참조
편집 변수
템플릿 변수
아래 (Variables) 참조
Application in
Dart: top-level
최상위 수준에서만 사용하기 때문에
Expand with
Default (Tab)
자신의 취향에 따라
Reformat according to style
non check
자신의 취향에 따라
Shorten FQ names
check
자신의 취향에 따라
템플릿 텍스트
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part '$FILE_NAME$.freezed.dart';
part '$FILE_NAME$.g.dart';
@freezed
abstract class $CLASS_NAME$ with _$$$CLASS_NAME$ {
const factory $CLASS_NAME$({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _$CLASS_NAME$;
factory $CLASS_NAME$.fromJson(Map<String, dynamic> json) => _$$$CLASS_NAME$FromJson(json);
}
※ 변수 id
, imageUrl
의 선언 부분은 @JsonKey(name: 'xxxxx')
의 쓰는 방법을 매번 조사하는 것이 번거롭기 때문에 복제용으로 넣고 있는 것입니다. 불필요한 분은 삭제하십시오.
Variables
이름
Expression
Default value
Skip if defined
FILE_NAME
fileNameWithoutExtension()
fileNameWithExtension()
check
CLASS_NAME
underscoresToCamelCase(String)
capitalize (underscoresToCamelCase (fileNameWithoutExtension ()))
check
이것들을 설정, OK, Apply하십시오.
주의점
파일명으로부터 작성하게 되어 있습니다. 예를 들어 content_category.dart
파일에 freezed 를 입력하여 완성하면 다음과 같은 코드가 됩니다.
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'content_category.freezed.dart';
part 'content_category.g.dart';
@freezed
abstract class ContentCategory with _$ContentCategory {
const factory ContentCategory({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _ContentCategory;
factory ContentCategory.fromJson(Map<String, dynamic> json) => _$ContentCategoryFromJson(json);
}
그런 다음 build_runner를 사용하여 코드를 생성합니다. 자세한 내용은 freezed을 README를 참조하십시오.
Reference
이 문제에 관하여(안드로이드 스튜디오에서 Flutter 개발로 freezed 용 Live Template 준비), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kakutouma/items/878c718e98f837fc5f1a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
환경 설정
Android Studio > Preferences...
의 Editor > Live Templates
에서 Flutter를 선택하고 "➕"버튼을 클릭합니다.설정 내용
설정 항목
설정 내용
비고
Abbreviation
freezed
보완 할 때 입력하는 문자열이므로 스스로 알기 쉬운 것을
Description
Create freezed class
이것도 스스로 알기 쉬운 것을
템플릿 텍스트
템플릿 문자열
아래 (Template text) 참조
편집 변수
템플릿 변수
아래 (Variables) 참조
Application in
Dart: top-level
최상위 수준에서만 사용하기 때문에
Expand with
Default (Tab)
자신의 취향에 따라
Reformat according to style
non check
자신의 취향에 따라
Shorten FQ names
check
자신의 취향에 따라
템플릿 텍스트
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part '$FILE_NAME$.freezed.dart';
part '$FILE_NAME$.g.dart';
@freezed
abstract class $CLASS_NAME$ with _$$$CLASS_NAME$ {
const factory $CLASS_NAME$({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _$CLASS_NAME$;
factory $CLASS_NAME$.fromJson(Map<String, dynamic> json) => _$$$CLASS_NAME$FromJson(json);
}
※ 변수 id
, imageUrl
의 선언 부분은 @JsonKey(name: 'xxxxx')
의 쓰는 방법을 매번 조사하는 것이 번거롭기 때문에 복제용으로 넣고 있는 것입니다. 불필요한 분은 삭제하십시오.
Variables
이름
Expression
Default value
Skip if defined
FILE_NAME
fileNameWithoutExtension()
fileNameWithExtension()
check
CLASS_NAME
underscoresToCamelCase(String)
capitalize (underscoresToCamelCase (fileNameWithoutExtension ()))
check
이것들을 설정, OK, Apply하십시오.
주의점
파일명으로부터 작성하게 되어 있습니다. 예를 들어 content_category.dart
파일에 freezed 를 입력하여 완성하면 다음과 같은 코드가 됩니다.
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'content_category.freezed.dart';
part 'content_category.g.dart';
@freezed
abstract class ContentCategory with _$ContentCategory {
const factory ContentCategory({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _ContentCategory;
factory ContentCategory.fromJson(Map<String, dynamic> json) => _$ContentCategoryFromJson(json);
}
그런 다음 build_runner를 사용하여 코드를 생성합니다. 자세한 내용은 freezed을 README를 참조하십시오.
Reference
이 문제에 관하여(안드로이드 스튜디오에서 Flutter 개발로 freezed 용 Live Template 준비), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kakutouma/items/878c718e98f837fc5f1a
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part '$FILE_NAME$.freezed.dart';
part '$FILE_NAME$.g.dart';
@freezed
abstract class $CLASS_NAME$ with _$$$CLASS_NAME$ {
const factory $CLASS_NAME$({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _$CLASS_NAME$;
factory $CLASS_NAME$.fromJson(Map<String, dynamic> json) => _$$$CLASS_NAME$FromJson(json);
}
파일명으로부터 작성하게 되어 있습니다. 예를 들어
content_category.dart
파일에 freezed 를 입력하여 완성하면 다음과 같은 코드가 됩니다.import 'package:flutter/foundation.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'content_category.freezed.dart';
part 'content_category.g.dart';
@freezed
abstract class ContentCategory with _$ContentCategory {
const factory ContentCategory({
@required int id,
@JsonKey(name: 'image_url') @required String imageUrl,
}) = _ContentCategory;
factory ContentCategory.fromJson(Map<String, dynamic> json) => _$ContentCategoryFromJson(json);
}
그런 다음 build_runner를 사용하여 코드를 생성합니다. 자세한 내용은 freezed을 README를 참조하십시오.
Reference
이 문제에 관하여(안드로이드 스튜디오에서 Flutter 개발로 freezed 용 Live Template 준비), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kakutouma/items/878c718e98f837fc5f1a텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)