likes
comments
collection
share

uniapp7-uniapp项目配置你配置全了吗

作者站长头像
站长
· 阅读数 30

uniapp7-uniapp项目配置你配置全了吗(基础配置)

1、 pages.json 基本配置

根目录下面这个文件夹是 Uni-app 中主要的配置文件,可以配置页面路径、窗口样式、导航栏样式、标签栏样式等信息。 其中,pages数组中第一项表示应用启动页。

简单看一下我们这个文件下面的信息和配置

uniapp7-uniapp项目配置你配置全了吗

tab栏导航切换

对tabBar进行配置,这里可以显示我们切换时候的底部背景文字颜色之类的!

uniapp7-uniapp项目配置你配置全了吗

"tabBar": {
		"color": "#7A7E83", //tab文字颜色
		"selectedColor": "#007AFF", //tab文字选中颜色
		"borderStyle": "black", //边框颜色 
		"backgroundColor":"#F8F8F8", // tab背景色
		"list": [{
				"pagePath": "pages/tabBar/index/index",
				// "iconPath": "static/component.png",
				// "selectedIconPath": "static/componentHL.png",
				"text": "首页"
		}]
}

List里面 添加Tab切换组件列表

{
    "pagePath": "pages/tabBar/component/component",
    "text": "组件页面"
}

添加首页页面

pages 下面写入对象,设置首页标题和首页下拉刷新

{
    "path": "pages/tabBar/index/index",
    "style": {
            "navigationBarTitleText": "首页",
            "enablePullDownRefresh": true     // 开启下拉刷新
    }
}

添加组件列表页面

{
    "path": "pages/tabBar/component/component",
    "style": {
            "navigationBarTitleText": "组件页面"
    }
}

static 静态文件

添加image 图片目录 ,放入tab的icon图片

uniapp7-uniapp项目配置你配置全了吗

2、 pages 页面路径配置

用来配置各个页面的路径,也就是用来加载和跳转页面使用。

3、 globalStyle 全局样式配置

用来设置全局的窗口样式,如窗口背景色、导航栏背景色,之后我们就能使用到

4、 pages下的style:页面特定配置

用来为每个页面单独配置窗口样式、导航栏样式等,使得每个页面可以有不同的外观表现。 简单写法如下:

"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
        {
                "path": "pages/tabBar/index/index",
                "style": {
                        "navigationBarTitleText": "首页",
                        "enablePullDownRefresh": false,
                        "navigationStyle": "custom"
                }
        },
   ]

当然,我们也可以在每个页面的 .vue 文件中单独配置。

5、 subPackages分包配置

用来在 subPackages 字段中配置分包的路径和规则,以便进行分包加载和管理,简单写法如下:

"subPackages": [ 
    { "root": "package1", "pages": [ "sub1/index", "sub1/detail" ] },
    { "root": "package2", "pages": [ "sub2/index", "sub2/detail" ] } 
],

6、 condition 多端适配

用来设置条件编译,实现多端(如H5、小程序等)的适配,简单写法如下:

"condition": { "mp-weixin": { "navigationBarTextStyle": "white" } }

7、 tabBar 自带菜单栏

这是官方给我们自带的菜单栏,可以在这个里写一些我们没有复杂设计时候的菜单

8、 uniIdRouter 指定页面的唯一标识符

用于页面之间的路由跳转和传参

意思就是当我们在 pages.json 文件中设置了 uniIdRouter: true,则表示该页面使用唯一标识符进行路由跳转。

可以避免直接使用页面路径进行路由跳转,有没有在一瞬间觉得其实这就是vue-router之中的name,反正我感觉差不多就是一个意思。

大致写起来就是下面这样子:

{
  "pages": [
    {
      "path": "pages/index/index",
      "aliasPath": "/index",
      "uniIdRouter": true
    },
    {
      "path": "pages/detail/detail",
      "aliasPath": "/detail",
      "uniIdRouter": true
    }
  ]
}

使用的时候

// 使用唯一标识符进行路由跳转
uni.navigateTo({
    url: 'uni-id://index' 
});

9、报错和处理

(1)Unhandled promise rejection

uniapp7-uniapp项目配置你配置全了吗

原因:没写catch()

uniapp7-uniapp项目配置你配置全了吗

解决方法:

这种情况下会在控制台中看到 "Unhandled promise rejection" 错误, 可以用以下来捕获错误

let promise = new Promise(function(resolve, reject) {
  reject(new Error("Uncaught Error"));
});
promise.then(function(result) {
  console.log(result);
}).catch(function(error) {
  console.log(error.message);
});

(2)unhandled promise rejection ty

这里这句unhandled promise rejection ty 的意思是未处理的 Promise 拒绝。这通常是因为 Promise 对象被拒绝了,但没有被 catch 或者处理。在 JavaScript 中,Promise 对象可以表示异步操作的结果,如果 Promise 对象被拒绝了,就需要通过 catch 或者处理函数来处理这个错误。如果没有处理,就会出现 unhandled promise rejection ty 的错误提示。

转载自:https://juejin.cn/post/7384792106827153442
评论
请登录