미니프로그램의 구성에 대해 간단히 말씀드리자면
그림과 같습니다
1. 해당 이름의 스크립트(.js)와 스타일(.wxss)이면 충분합니다. 참조가 필요하지 않습니다. 페이지 아래의 스크립트와 스타일은 가장 바깥쪽 app.js인 app.wxcss
2. 스크립트 즉, .js 파일은 고정된 형식을 갖습니다: 페이지는 데이터를 얻는 데 사용됩니다 3. utils는 데이터 인터페이스를 배치하는 데 사용됩니다 데이터 액세스 ajax 알지, 할 수 있어 문제 없어 할 얘기 없어 WeChat 애플릿, IDE가 너무 형편없어서 코드를 읽기 어렵게 작성하면 전체 프로젝트가 어려워지니까 유지하다. 저는 앱을 작성한 적이 없기 때문에 데이터 액세스가 앱에 어떻게 캡슐화되어 있는지 모르겠습니다. 3일의 업무 경험을 가진 소규모 프로그램 코더로서, 각 페이지의 데이터가 직접 데이터 인터페이스에 액세스하는 것은 OOP가 아닙니다 그러다가 linq to sql을 생각하고 원래는 Singleordefault와 firstordefault를 사용할 계획이었지만 2가지 방법만 사용했습니다. 생각하기 귀찮아서 getbyparams, getbyid를 이용해서 조건에 따라 데이터를 전부 찾거나, ID에 따라 데이터를 하나씩 가져오는 방법을 사용했습니다 메소드만 살펴보자면 좀 장황하네요const API_URL = 'http://localhost:4424/api/' function getApi(url,params){ return new Promise((res,rej)=>{ wx.request({ url:API_URL+'/'+url, data:Object.assign({},params), header:{'Content-Type': 'application/json'}, success:res, fail:rej }) }) } module.exports = { GetByParams(url,page=1,pageSize=20,search = ''){ const params = { start: (page - 1) * pageSize, pageSize: pageSize } return getApi(url, search ? Object.assign(params, { q: search }) : params) .then(res => res.data) }, GetById(url,id){ return getApi(url, id) .then(res => res.data) } }
const req = require('../../utils/util.js') Page({ data: { imgUrls: [], indicatorDots: true, autoplay: true, interval: 2000, duration: 2000 }, onLoad(){ req.GetByParams('home/homebanner')//看这里 看这里 看这里 .then(d=>this.setData({imgUrls:d,loading:false})) .catch(e=>{ this.setData({imgUrls:[],loading:false}) }) } })