先说一下我自己在开发时遇到的问题,
1、使用uniapp开发,在谷歌上会有跨域问题,用微信开发者工具不会有跨域问题
配置跨域以后需要重启HBuilderX
"h5": {
"devServer": {
"port": 8080,
"disableHostCheck": true,
"proxy": {
"/api": {
"target": "",
"changeOrigin": true,
"secure": false,
"pathRewrite": {
"^/api": ""
}
}
}
}
}
2、在使用分包是 跟小程序分包不一样
初始化uniapp项目
1、在HBuilder X 新建项目 选择uni-app
创建好的项目
2、 运行 可以选择浏览器或者手机,或者微信开发者工具
3、项目打包
4、配置第三方登录
5、语法使用Vue的语法,
//小程序的方法把,wx 换成 uni, 就可以了
uni.getSystemInfo({
success: function(res) { // res - 各种参数
console.log(res.windowWidth); // 屏幕的宽度
let info = uni.createSelectorQuery().select(".类名");
info.boundingClientRect(function(data) { //data - 各种参数
console.log(data.width) // 获取元素宽度
}).exec()
}
});
6、配置Tabbar ,打开pages.json
7、封装请求接口
8、生命周期 ,
uniapp 支持完整的Vue生命周期
9、uniapp的本地存储
- uni.setStorageSync(KEY,DATA)将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。
- uni.setStorage(OBJECT)将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个异步接口。
- uni.getStorage(OBJECT)从本地缓存中异步获取指定 key 对应的内容
- uni.getStorageSync(KEY)从本地缓存中同步获取指定 key 对应的内容。
- uni.getStorageInfo(OBJECT)异步获取当前 storage 的相关信息
- uni.getStorageInfoSync()同步获取当前 storage 的相关信息。
- uni.removeStorage(OBJECT)从本地缓存中异步移除指定 key
- uni.removeStorageSync(KEY)从本地缓存中同步移除指定 key。
- uni.clearStorage()清理本地数据缓存。
10、uniapp中的nvue是什么
- 不用写display:flex; 自动就是flex布局,但是自动加入了flex-derection:column,需要自己覆盖修改
- 没有%,最好通过获取屏幕宽度动态绑定宽度
- border不能简写,分成border-style,border-color,border-width(border-top)
- 文字显示和绑定只能通过text标签绑定
- nvue向vue页面传输许多数据并跳转时,可以使用仓库储存,在onUnload时清空(判断对象是否为空,JSON.stringify(data)==’{}’)
- swiper的很多属性不能使用,duration,previous-margin,display-multiple-items等属性