uni-app

uni-app

1.搭建环境

上官网安装一下开发工具
然后需要安装微信开发者工具 最好用最新的
如果直接写app的话 可以安装模拟器 如果是mac 再安装Xcode 就可以双端
然后用开发工具 创建一个模板运用了
2.使用vuex

uni-app已经内置vuex 不需要再安装了
在根目录下新建store文件 在其目录创建index.js

import Vue from "vue";
import Vuex from "vuex";
Vue.use(Vuex);

import users from "./modules/users/users.js";

export default new Vuex.Store({
	modules:{
		users
	}
})

然后在main.js入口文件

import Vue from 'vue'
import App from './App'

//  在这里引入store
import store from './store/index.js'

//  这里是重要的一步 这里不写 app会找不到store
Vue.prototype.$store=store;

import divberLine from '@/components/divider-line/divider-line.vue';
import indexNav from '@/components/index/indexNav/indexNav.vue';
import titleCard from '@/components/titleCard/titleCard.vue';
import productItem from '@/components/productItem/productItem.vue';
import Price from '@/components/Price/Price.vue';
import productListItem from'./components/productListItem/productListItem.vue'
import Loading from'@/components/Loading/Loading.vue'
import swiperImage from '@/components/index/swiper-image/swiper-image.vue';
Vue.config.productionTip = false



App.mpType = 'app'

// 单个组件祖册方法
Vue.component("swiperImage",swiperImage)
Vue.component("divberLine",divberLine)
Vue.component("indexNav",indexNav)
Vue.component("titleCard",titleCard)
Vue.component("productItem",productItem)
Vue.component("Price",Price)
Vue.component("productListItem",productListItem)
Vue.component("Loading",Loading)


const app = new Vue({
    ...App,
	store
})
app.$mount()

3.配置

打开manifest.json 这里是可视化的
mac这边还有一个坑 需要配置微信开发者工具的路径 打开偏好设置
如果不配置 一直会报错 如果出现启动不了微信开发者工具 可以自己找到编译好的目录 自己手动导入就可以了
4.HBuilderX 1.9.8的坑

首先是onLoad生命周期 调用路由的api会报错

navigateTo with an already exist webviewId 1 

如果出现这个错 解决办法就是延迟


setTimeout(() => {
    uni.switchTab({
        url: '这里是路径'
    })
}, 400)

官方说在1.9.9+版本会修复
5.获取节点

支持微信小程序 H5 APP 其他没有测试

uni.createSelectorQuery()
// 官方说自定义组件模式 要这样写
uni.createSelectorQuery().in(this)

这里需要注意一点 要在onReady这个生命周期里面才能获取到
优化建议

建议使用自定义组件模式

每次data改变都会重新渲染视图,一些不是视图的变量,可以考虑定义在data外面

写组件的时候避免多层嵌套,建议3 4层还最佳

建议用vuex来管理数据,如果想要在app更好的性能可以使用nvue来开发

开发体验

uni-app的开发体验还行 但是需要自己去磨平部分一些跨端的差异 比如导航栏 我自己研究还不透 先不分享这块了

关于app调试的时候没有打印出来,那个时候内心是绝望的,升级到1.9.7后就有了,但也不推荐大家盲目的升级,升级之后总有一些奇奇怪怪的bug,比如最近onload的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值