小言_互联网的博客

uniapp项目

374人阅读  评论(0)

目录

一、HBuilder创建项目

二、引入uView

2.1 npm方式安装

2.2 下载方式安装

三、小程序的分包

三、App.vue中的生命周期

四、工具封装

五、api接口请求封装

六、store

七、加载顺序

八、flex的使用


一、HBuilder创建项目

文件--新建--项目--默认模板--Vue2--创建

二、引入uView

两种引入方式:npm、下载

2.1 npm方式安装

2.1.1  sass


   
  1. / / 安装sass
  2. npm i sass -D
  3. / / 安装sass-loader,注意需要版本 10,否则可能会导致vue与sass的兼容问题而报错
  4. npm i sass-loader@ 10 -D

2.1.2  下载


   
  1. / / 如果您的项目是HX创建的,根目录又没有package.json文件的话,请先执行如下命令:
  2. / / npm init -y
  3. / / 安装
  4. npm install uview-ui@ 2.0.31

2.1.3 引入uView主JS库

在项目src目录中的main.js中,引入并使用uView的JS库,注意这两行要放在import Vue之后。


   
  1. / / main.js
  2. import uView from "uview-ui";
  3. Vue. use(uView);

2.1.4 在引入uView的全局SCSS主题文件

在项目src目录的uni.scss中引入此文件。


   
  1. / * uni.scss * /
  2. @import 'uview-ui/theme.scss';

2.1.5引入uView基础样式

注意!   在App.vue首行的位置引入,注意给style标签加入lang="scss"属性


   
  1. <style lang = "scss" >
  2. / * 注意要写在第一行,同时给style标签加入lang = "scss"属性 * /
  3. @import "uview-ui/index.scss";
  4. < /style >

2.1.6 配置easycom组件模式

此配置需要在项目src目录的pages.json中进行。


   
  1. / / pages.json
  2. {
  3. "easycom": {
  4. "^u-(.*)": "uview-ui/components/u-$1/u-$1.vue"
  5. },
  6. / / 此为本身已有的内容
  7. "pages": [
  8. / / ......
  9. ]
  10. }

2.1.7 Cli模式额外配置

如果您是vue-cli模式的项目,还需要在项目根目录vue.config.js文件中进行如下配置:


   
  1. / / vue.config.js,如没有此文件则手动创建
  2. module.exports = {
  3. transpileDependencies: [ 'uview-ui']
  4. }

2.2 下载方式安装

间官网 :

下载安装方式配置 | uView 2.0 - 全面兼容nvue的uni-app生态框架 - uni-app UI框架

三、小程序的分包

在小程序中,要求主包不能超过2M,主包包括:pages、引入到pages里的components、static等,在打包的时候会生成vinder、runtime等,两者已经为1M以上了,所以需要解决:

1、分包subPackages

一般是将tabbar在主包pages和tarbbar中注册,不用在subPackages中注册

其它非tabbar页面就在subPackges中注册

在pages同级pages_home生成此目录,里面可放组件和图片


  
  1. "subPackages": [{
  2. "root": "pages_home",
  3. "pages": [{
  4. "path": "pages/index"
  5. }]
  6. }],

2、减少pages里的代码,减少静态图片的引入,可以使用oss图片,引入https路径

三、App.vue中的生命周期


  
  1. onLaunch: function( ) {
  2. console. log( 'onLaunch是页面第一次加载的时候会触发')
  3. },
  4. onShow: function( ) {
  5. console. log( 'onShow是从别的页面进入后就会触发')
  6. },
  7. onHide: function( ) {
  8. console. log( 'onHide是关闭页面后隐藏后')
  9. }

四、工具封装


  
  1. //在main.js中引入
  2. import util from './utils/util.js'
  3. Vue. prototype. $util = util
  4. //页面中使用
  5. this. $util.***

五、api接口请求封装

六、store

http://t.csdn.cn/oVCyM

七、加载顺序

页面中的数据DOM树、data、mounted三者之间的加载顺序

若有问题可以用nextTick时间片解决

八、flex的使用


  
  1. .contrainer {
  2. display: flex;
  3. flex-direction: column;
  4. height: calc(100vh - 94px);
  5. overflow: hidden;
  6. .scroll_box {
  7. flex: 1 100%;
  8. overflow-y: scroll;
  9. }
  10. .fixd_box {
  11. height: 100rpx;
  12. }
  13. }

转载:https://blog.csdn.net/qq_52301431/article/details/128777135
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场