• Vue


    Vue问题汇总

    mac用npm安装gyp报错:NPM Error:gyp: No Xcode or CLT version detected!

    执行如下命令

    sudo rm -rf $(xcode-select -print-path)
    
    xcode-select --install

     

    node-sass 及 node-gyp 安装失败

    报错如下

    ...
    gyp ERR! build error 
    gyp ERR! stack Error: `make` failed with exit code: 2
    ...
    npm ERR! node-sass@4.7.2 postinstall: `node scripts/build.js`
    npm ERR! Exit status 1
    ...

    node-sass 以及 node-gyp 在安装的时候,会自动去找国外的源进行下载,而这个源并不是非常的稳定。请注意,这个不稳定并不全是由于国内墙的存在造成的,因为就算你开了 VPN,这个问题还是会发生。

    所以最好的解决办法就是用淘宝镜像 cnpm:

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

     

    ERROR in Cannot find module 'node-sass'

    找不到node-sass模块。这是因为cnpm安装导致的,换成npm安装,或者执行下列命令:

    cnpm install node-sass@latest

    ENOENT: no such file or directory, scandir

    安装node-sass报错,执行下列命令:

    npm rebuild node-sass

    vue+echarts 百度地图上线后BMap api is not loaded

    注意两点

    1.引入优化

    // 如果是 webpack 打包,也可以 require 引入
    require('echarts');
    require('echarts/extension/bmap/bmap');

    2.注意生产环境打包时,也要配置AK

      <script type="text/javascript" src="http://api.map.baidu.com/api?v=3.0&ak=你的AK"></script>

    element-ui中的upload组件增加请求头token

    <el-upload
      action="http://ip:port/uploadFile";
      multiple
      :limit="3"
      :headers="myHeaders"    //注:此处也可以使用computed来传动态值
      :on-success="suc">
      <el-button size="small" type="primary">点击上传</el-button>
    </el-upload>
    
    ...
    
    data: {
      myHeaders: {
          token: "324234234234324343pz9cvbg3Rw="
      }
    },

    element-ui弹窗的this.$confirm框报错Uncaught (in promise) cancel

    this.$confirm('确定?', '提示', {type: 'warning'})
    .then(() => {
        this.$message({
            message: '操作成功',
            type: 'success'
        });
    })
    .catch(() => {});  //一定别忘了这个

    VUE关闭extra代码规范

    useEslint: ture,改成 useEslint: false,

    解决vue开发环境中一直发http://localhost:8080/sockjs-node/info?t=xxx 请求

    sockjs-node 是一个JavaScript库,提供跨浏览器JavaScript的API,创建了一个低延迟、全双工的浏览器和web服务器之间通信通道。

    • 服务端:sockjs-node(https://github.com/sockjs/soc...)
    • 客户端:sockjs-client(https://github.com/sockjs/soc...)

    开发时,如果变更网络环境(如切换wifi导致开发服务器的IP地址更换),服务器不知道如何确定访问源,就有可能造成上述情况,解决办法如下:

    办法一

    找到/node_modules/sockjs-client/dist/sockjs.js,找到代码的 1605行

    try {
      //  self.xhr.send(payload); 把这里注掉
    } catch (e) {
      self.emit('finish',0,'');
      self.\_cleanup(false);
    }

    办法二

    打开/package-lock.json,关闭开发环境时的 sockjs 接口

    elementUI el-dialog弹框居中

    如下样式可以让这个弹框既能在视窗居中,又能在内容过多时防止弹框大小超出视窗,还能把滚动限制在body内部从而使得头和尾始终可见,再也不用滚上滚下去找各种标题和按钮了。

      .el-dialog {
        display: flex;
        flex-direction: column;
        margin: 0 !important;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height:850px;
        width: 550px;
        max-height: calc(100% - 30px);
        max-width: calc(100% - 30px);
      }
    
      .el-dialog .el-dialog__body {
        flex: 1;
        overflow: auto;
      }

    NVM报错:You need to run "nvm install N/A" to install it before using it.

    执行命令: nvm ls   查看"default" Node 版本,这是引起报错的原因

    执行命令:nvm alias default node

     

    执行命令:nvm ls 查看

  • 相关阅读:
    【leetcode_easy_array】1450. Number of Students Doing Homework at a Given Time
    【leetcode_easy_array】1295. Find Numbers with Even Number of Digits
    【leetcode_easy_array】1266. Minimum Time Visiting All Points
    【leetcode_easy_array】1260. Shift 2D Grid
    【leetcode_easy_array】1275. Find Winner on a Tic Tac Toe Game
    【leetcode_easy_array】1450. Number of Students Doing Homework at a Given Time
    【leetcode_easy_array】1287. Element Appearing More Than 25% In Sorted Array
    【leetcode_easy_array】1299. Replace Elements with Greatest Element on Right Side
    【leetcode_easy_array】1512. Number of Good Pairs
    【leetcode_easy_array】1252. Cells with Odd Values in a Matrix
  • 原文地址:https://www.cnblogs.com/helios-fz/p/12656644.html
Copyright © 2020-2023  润新知