1. 学会应用 GitHub 命令行工具。
1.1 拉取最新代码步骤:
a. git checkout main ——确保本人在 main 分支上
b. git pull ——拉取最新代码
c. git branch 分支名 ——创立新的分支
d. git checkout 分支名 ——转换到新建分支上进行代码的编写
1.2 将本地代码推到服务器上:
a. git add . ——将我的项目的所有文件增加到缓存中 (如果是文件下,会一起将文件夹提交下来)
b. git commit -a -m ‘ 形容信息 ’ ——将我的项目文件提交到本地仓库
c. git push origin 以后分支号 ——将代码提交到服务器上
2.mockapi 下 index 界面分页查问
2.1 在 village.api.ts 中编写模仿后盾;
// 分页查问
{
method: 'GET',
url: `${this.baseUrl}/page`,
result: (urlMatches: any, options: { params: HttpParams;}) => {
const params = options.params as HttpParams;
console.log('承受的参数为:', params);
const page = +params.get('page');
const size = +params.get('size');
console.log(this.baseUrl, 1);
// 参数校验
Assert.isNotNullOrUndefined(page, size, 'page,size 为必选');
Assert.isDefined(params.get('name'), '选填参数未增加全');
// 构建返回数据
const beginId = page * size;
const villages = new Array<Village>();
for (let i = 0; i < +size; i++) {
const community = {id: randomNumber(),
name: randomString('社区'),
pinyin: randomString('pinyin'),
town: {name: randomString('乡镇'),
} as Town
} as Community;
const model = {id: randomNumber(),
name: randomString('3D 模型'),
pinyin: randomString('pinyin'),
} as Model;
villages.push({
id: beginId + i,
name: randomString('小区'),
pinyin: randomString('pinyin'),
longitude: randomNumber(),
latitude: randomNumber(),
model,
establishTime: randomNumber(),
type: randomNumber(),
community,
} as Village);
}
return {content: villages, number: page, size, totalElements: 40 + randomNumber()
} as Page<Village>;
}
},
2.2 在 village.service.ts 层中写 page 办法,调用 village.api.ts;
/**
* 分页
* @param param 查问参数
*/
// 函数 page,参数为 param 是一个对象,函数类型为 Observable<Page<Village>>
page(param: {
page: number,
size: number,
}): Observable<Page<Village>> {
// 定义 http 申请头,增加 page 和 size
const httpParams = new HttpParams()
.append('page', param.page.toString())
.append('size', param.size.toString());
// 返回依据相应链接订阅的数据,将数据中的每一个 json 对象转换为 VILLAGE 对象。return this.httpClient.get<Page<Village>>(`${this.url}/page`, {params: httpParams})
.pipe(map(data => new Page<Village>(data).toObject(d => new Village(d))));
}
2.3 在 village\index.component.ts 中写分页接口,调用 village.service.ts 中办法;
// 初始化函数,类型为 void,继承 OnInit 就必须有此函数,且必须有函数体
ngOnInit(): void {this.route.queryParams.subscribe((params: { page?: string, size?: string}) => {this.queryParams = {...params};
const page = +getDefaultValueWhenUndefinedOrNull(params.page, '0');
const size = +getDefaultValueWhenUndefinedOrNull(params.size, config.size.toString());
this.villageService.page({page, size})
.subscribe(page => {this.validate(page);
this.pageData = page;
})
})
}
2.4 写前端 html 页面,调用 village\index.component.ts,将虚构后盾的数据进行反显。