赞
踩
vue create -p dcloudio/uni-preset-vue my-project
#开发时
npm run dev:mp-weixin
#生产时
npm run build:mp-weixin
// pages.json "tabBar": { "list": [ { "pagePath": "pages/home/home", "iconPath": "static/icons-首页.png", "selectedIconPath": "static/icons-首页-(1).png", "text": "首页" }, { "pagePath": "pages/classify/classify", "iconPath": "static/icons-分类.png", "selectedIconPath": "static/icons-分类-(1).png", "text": "分类" } ] }
// pages.json
"subPackages": [
{
"root": "subPackageA",
"pages": [
{
"path": "list/list",
"style": {
"navigationBarTitleText": "列表"
}
}
]
}
]
// 自定义request.js //1.设置baseURL const baseURL = 'https://www.example.com/' //仅为示例,并非真实接口地址 //2.获取token,设置请求头 const token = '' if(token){ token.Authorization = token } //3.发起网络请求 const request = ({url, method, data, header}) => { return new Promise((resolve, reject) => { uni.request({ url: `${baseURL}${url}`, method, data, header, success: (res) => { resolve(res.data) }, fail: (err) => { reject(err) } }) }) } //4.挂载网络请求的方法到全局uni对象 uni.$request = request
// main.js
import '@/utils/request'
// 组件中
methods: {
async getDataFn(){
const res = await uni.$request({
url: 'home/example', //示例url
method: 'GET',
data: {
text: 'uni.request'
}
})
console.log('后台返回数据', res)
}
}
直接使用(不用导入)
将组件导入项目中才可以使用。导入组件:
npm i sass -D
npm i sass-loader -D
npm i @dcloudio/uni-ui
// pages.json中,配置easycom
"easycom": {
"autoscan": true,
"custom": {
// uni-ui 规则如下配置
"^uni-(.*)": "@dcloudio/uni-ui/lib/uni-$1/uni-$1.vue"
}
}
//在根目录创建 vue.config.js 文件,并配置:
module.exports = {
transpileDependencies: ['@dcloudio/uni-ui']
}
在DCloud插件市场,下载 uni-ui 并导入HBuilderX
// store/index.js
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
state: { },
mutations: { },
actions: { },
getters: { }
})
export default store
在 main.js 中导入
// main.js
import Vue from 'vue'
import App from './App'
import store from './store'
Vue.prototype.$store = store
const app = new Vue({
store,
...App
})
app.$mount()
// main.js
import Vue from 'vue'
import App from './App'
import store from './store'
Vue.prototype.$store = store
const app = new Vue({
store,
...App
})
app.$mount()
在 store 目录下新建 index.js 文件,作为模块入口,引入各子模块
// store/index.js
import Vue from 'vue'
import Vuex from 'vuex'
import moduleA from './modules/moduleA'
Vue.use(Vuex)
const store = new Vuex.Store({
modules: { moduleA },
getters: {
count: state => state.moduleA.count
}
})
export default store
子模块页面内容:
// store/modules/moduleA.js export default { namespaced: true, // 命名空间 state:{ count: 10 }, mutations: { add(state, payload){ state.count += payload }, addCountMutation(){ this.commit('moduleA/add', 1) } }, actions: { addCountAction(context, payload){ context.commit('add', payload) } }, getters: {} }
(1)方式一:通过vue-cli命令行
npm run build:mp-weixin
打开微信开发者工具,导入 dist/build/mp-weixin 运行
(2)方式二:通过HBuilderX
【发行】->【小程序-微信】,编译成功后,自动开启微信开发者工具
在微信开发者工具,预览、上传代码
在微信公众平台(小程序管理后台),提交审核、发布
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。