You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.1 KiB

11 months ago
class Song {
String pic;
String artistPic;
String title;
String artist;
String musicurl;
int id;
bool likes;
bool collection;
11 months ago
// 构造函数
Song({
required this.pic,
required this.artistPic,
required this.title,
required this.artist,
required this.musicurl,
required this.id,
required this.likes,
required this.collection,
});
// 使用 Map 数据创建 Song 实例
factory Song.fromMap(Map<String, dynamic> map) {
return Song(
pic: map['coverPath'] ?? '', // 封面图,假设是 coverPath
artistPic: map['coverPath'] ?? '', // 如果没有返回值或字段,可以为空字符串(示例中没有提供 artistPic
title: map['name'] ?? '', // 歌曲名称,假设是 name
artist: map['singerName'] ?? '', // 歌手名称,假设是 singerName
musicurl: map['musicPath'] ?? '', // 歌曲路径,假设是 musicPath
id: map['id'] ?? 0, // 歌曲 ID假设是 id
likes: map['likeOrNot'] ?? false, // 是否喜欢,假设是 likeOrNot
collection: map['collectOrNot'] ?? false, // 是否收藏,假设是 collectOrNot
);
}
11 months ago
}