在使用Angular 8和Laravel进行Websockets时,如果出现错误提示“找不到Socket.io客户端”,可能是因为缺少Socket.io客户端库。
解决方法如下:
npm install socket.io-client --save
src/polyfills.ts文件中添加以下代码:(window as any).global = window;
src/app/app.module.ts文件中添加以下代码:import { SocketIoModule, SocketIoConfig } from 'ngx-socket-io';
const config: SocketIoConfig = { url: 'http://localhost:3000', options: {} };
@NgModule({
  imports: [
    // ...
    SocketIoModule.forRoot(config)
  ],
  // ...
})
export class AppModule { }
请确保将http://localhost:3000替换为您Laravel项目的WebSocket服务器URL。
Socket:import { Component } from '@angular/core';
import { Socket } from 'ngx-socket-io';
@Component({
  selector: 'app-root',
  template: `
    
  `
})
export class AppComponent {
  constructor(private socket: Socket) { }
  sendMessage() {
    this.socket.emit('message', 'Hello World!');
  }
}
这样,您应该能够使用Socket.io在Angular 8和Laravel之间建立Websockets连接了。记得在Laravel项目中使用Socket.io服务器和适当的事件处理程序。
                    上一篇:Angular 8和jQuery