linux js报错怎么看,linux-nodjs安装

一、安装

https://www.jianshu.com/p/f4dbe17bda2e

首先要把老版本的卸载

yum remove nodejs npm -y

然后执行两个命令

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -

sudo yum -y install nodejs

然后查看 nodejs版本

node -v

安装 yarn

windows 上安装

npm install -g yarn

centos 上安装

curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo

sudo yum install yarn

二、报错解决

1、vue/cle3项目运行报错sockjs-node/info解决方案

bug复现

继上次将vue项目脚手架工具从vue-cli2.x升级到vue-cli3.x后,除了环境、配置问题外,在运行时出现了一些个新的问题。  启动项目后,在内网非本机运行项目时,控制台报错如下:

get http://localhost:8080/sockjs-node/info?t=1462183700002 net::ERR_CONNECTION_REFUSED

[WDS] Disconnected!

get http://localhost:8080/sockjs-node/info?t=1462183700002 net::ERR_CONNECTION_REFUSED

[WDS] Disconnected!

get http://localhost:8080/sockjs-node/info?t=1462183700002 net::ERR_CONNECTION_REFUSED

[WDS] Disconnected!

...

webpack.config.js的目前配置如下:

const path = require('path');

const resolve = dir => path.resolve(__dirname, dir);

const env = process.env.NODE_ENV;

module.exports = {

// 基本路径配置,解决打包路径问题

publicPath: './',

// 配置less

css: {

loaderOptions: {

css: {},

postcss: {

plugins: [

require('postcss-px2rem')({

remUnit: 37.5

})

]

}

}

},

configureWebpack: (config) => {

// 如果不是开发环境

if (env !== 'development') {

}

// 路径

config.resolve = {

extensions: ['.js', '.vue', '.json'],

alias: {

'vue$': 'vue/dist/vue.esm.js',

'@': resolve('src'),

}

}

},

chainWebpack: config => {

// 添加别名

config.resolve.alias

.set('@', resolve('src'))

.set('assets', resolve('src/assets'))

.set('static', resolve('src/static'));

},

}

报错分析

首先,sockjs-node是何方神圣?不难查出,sockjs-node是一个JavaScript库,提供跨浏览器JavaScript的API,创建了一个低延迟、全双工的浏览器和web服务器之间通信通道。那么在各端表现为:

服务端:sockjs-node(https://github.com/sockjs/sockjs-node)

客户端:sockjs-clien(https://github.com/sockjs/sockjs-client)

vue-cli3.x的启动方式是 npm run serve,我们没有用到该sockjs-node功能,但启动时会默认连续发请求调用本地接口。因此我们要做的就是移除掉它。那么如何移除?

解决方案

分享两种方案

1. 注释法

顾名思义,找到依赖包中的源码,将其注释:

进入路径 /node_modules/sockjs-client/dist/sockjs.js

代码1605行注释掉:

try {

// self.xhr.send(payload); //本行注释

} catch (e) {

self.emit('finish', 0, '');

self._cleanup(false);

}

重启项目

2. 配置vue.config

vue.config.js中的module.xports中添加如下,然后重启:

devServer: {

proxy: 'http://localhost:8080',

public: '192.168.xxx.xxx:8080' // 本地ip

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值