----------------------------------------------------uniapp-----------------------------------------------------------------------

----------------------------------------------------uniapp-----------------------------------------------------------------------

----------------------------------------------------uniapp-----------------------------------------------------------------------

----------------------------------------------------uniapp----------------------------------------------------------------------- 

uniapp开发中:

1、获取url中的参数this.$route.query或this.$mp.query

this.$route.query:H5、app平台

this.$mp.query:小程序平台

2、在UI层面,小程序
data() {
      return {
        loadingShow:true,
        product_id: 0, // 券包id
        promo_code: 0, // promo_code
        preview: {}, // 券包信息
        product: {}, // 券包商品内容
      };
    },

          <text class="coupon-title">{{product.name}}</text>

其他平台可以使用

data() {
      return {
        loadingShow:true,
        product_id: 0, // 券包id
        promo_code: 0, // promo_code
        preview: {}, // 券包信息
        product: {}, // 券包商品内容
      };
    },

          <text class="coupon-title">{{this.product.name}}</text>

记得适配小程序时,this都去除。

3,在打包的时候出现: 

This is probably not a problem with npm. There is likely additional logging output above.

可以使用:

 https://segmentfault.com/a/1190000042780467

 

4、打包出现 Error:EACCESS: promission denied.

 

 权限不够,sudo即可

 5、mac 的HBuilderX因为自己的胡乱操作,导致打开ide什么也不显示,导入项目显示“已存在同名项目”。

 


需要点击 【文件】  【打开多窗口项目】 选择你需要的项目进入即可。  ps:这奇葩操作

 6、uniapp下载图片

      savepicture() {
        let downLoadUrl = 'https:图片.png';
        // #ifdef MP-WEIXIN
        var self = this
        this.task = uni.downloadFile({
          url: downLoadUrl,
          success: (res) => {
            self.imageSrc = res.tempFilePath;
            uni.saveImageToPhotosAlbum({  // 仅仅针对小程序
              filePath: self.imageSrc,
              success: function() {
                uni.showToast({
                  title: '图片已保存到相册'
                });
              }
            })
          },
          fail: (err) => {
            console.log('downloadFile fail, err is:', err)
          }
        });
        // #endif

        // #ifdef H5
        uni.downloadFile({
          url: downLoadUrl, //仅为示例,并非真实的资源
          success: (res) => {
            console.log(res)
            if (res.statusCode === 200) {
              uni.showToast({
                title: '图片已保存到相册'
              });
              var oA = document.createElement("a");
              oA.download = ''; // 设置下载的文件名,默认是'下载'
              oA.href = res.tempFilePath; //临时路径再保存到本地
              document.body.appendChild(oA);
              oA.click();
              oA.remove(); // 下载之后把创建的元素删除
            }
          }
        });
        // #endif
      }

7、判断map是否为空使用

 this.result == undefined || JSON.stringify(this.result) == "{}"

 

 

8.调用之前某个路由的方法、或者改变state等、或者判断前一个路由是什么。

        this.$http.post(`${teamSetPoint}`, {
          point_rate: val,
          member_id: this.item.member_id,
        }).then(r => {
          uni.showToast({
            title: '设置成功',
            icon: 'success',
            duration: 2000
          });
          this.inputvalue = val;
          const pages = getCurrentPages(); //获取页面栈

          const beforePage = pages[pages.length - 2]; //前一个页面
          // 如果上一个页面是team-search
          if(beforePage.route == 'pages/user/team/team-search'){
            console.log('team-search');
             beforePage.$vm.result.point_rate = val;
          }else{
          // 如果上一个页面是 team 同时直接turn
            console.log('team');
            beforePage.$vm.teamList[this.index].point_rate = val;
            return;
          }

          // 如果上上一个页面是team
          const beforePage1 = pages[pages.length - 3]; //前前一个页面
          if(beforePage1.route == 'pages/user/team/team'){
            console.log('team2');
            beforePage1.$vm.teamList[this.index].point_rate = val;
          }

        }).catch((err) => {
          console.log(err);
        });

主要就是

          const pages = getCurrentPages(); //获取页面栈
          const beforePage = pages[pages.length - 2]; //前一个页面
          beforePage.$vm.方法
beforePage.route


 

  

 

 

  

----------------------------------------------------web----------------------------------------------------------------------- 

----------------------------------------------------web-----------------------------------------------------------------------

----------------------------------------------------web-----------------------------------------------------------------------

----------------------------------------------------web-----------------------------------------------------------------------

 

 

1.使用eslint代码检查时,常见的的错误:

1.1 Expected indentation of 0 spaces but found 1

前面的空格个数不对.应该不能有空格.

 1.2 Strings must use singlequote

  必须使用单引号

 1.3The template root requires exactly one element

<template>标签下必须有个根标签

 

 2.

There are multiple modules with names that only differ in casing.

This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.

Use equal casing. Compare these module identifiers:.....

使用了关键字或者保留字.修改即可.

3.使用VScode的打开浏览器插件,无法打开浏览器:

新安装了个open in browser,使用时无法使用,无法打开,在VSCode的设置里面搜索 open-in-browser.default,在出现的界面中填写浏览器即可。如

 

4.vue ui无反应。 

 https://blog.csdn.net/qq_21859119/article/details/105309423

5.vue中引入echarts 报错“export ‘default‘ (imported as ‘echarts‘) was not found in ‘echarts‘

https://www.cnblogs.com/cyhsmile/p/14098269.html

6. This may cause things to work incorrectly. Make sure to use the same version

 

 

需要 删除node_models 文件夹和 package-lock.json 文件重新 npm install. 写RN只需要删除node_models 文件夹.........

 

7.React数组变化之后,视图没有更新

https://www.cnblogs.com/xzsty/p/13044931.html 


8.npm rebuild node-sass出错 

 在启动hexo博客时,清了下hexo clean,出现“ERROR Plugin load failed: hexo-renderer-scss”,按照它的信息

npm rebuild node-sas 但是还是失败,报一样的错误,按照网上的说法: 先卸载该包再安装也不行. 换淘宝源也不行.

最后直接 删除package-lock.json,yarn.lock,node_modules 

再次npm install好了.

 

 9.升级了下npm和node,博客在发布时失败,按照网上的卸载hexo,又安装hexo,发现npm install hexo-cli -g 失败,需要:

npm install -g cnpm --registry=https://registry.npm.taobao.org
cnpm install hexo-cli -g

https://www.cnblogs.com/qq597585136/p/6964599.html

 

 10. 清除npm的淘宝镜像。

https://segmentfault.com/q/1010000004596263?utm_source=sf-similar-question
删除后安装有时成功,有时失败。。。。。。

 如果在npm install时,还是有问题,就直接修改为:

终端运行  npm config edit 修改下下面的配置


 

 

ELECTRON_MIRROR=https://npm.taobao.org/mirrors/electron/
registry=https://registry.npm.taobao.org/

11、在使用taro开发H5的时候遇到tips。 

 

 

如果你需要使用固定的尺寸的话,可以使用大写的PX作为单位即可。

 

 taro中使用图片资源,可以采用:

a、

 

b、

 

 

 

c、

 12、使用taro组件的时候,尽量都引入,否则有可能在微信小程序端可以使用,在H5页面却无法使用,因为有些组件在小程序端是自带的,而其他端是需要引入的。

 13、出现 npm ERR! request to https://registry.npm.taobao.org/create-wasm-app failed, reason: certificate has expired

淘宝镜像过期 

1、查看npm当前镜像:

npm config list

2、清空缓存:

npm cache clean --force

3、更换源:

npm config set registry https://registry.npmmirror.com

https://blog.csdn.net/maoge_666/article/details/136038003