2017-01-28 15 views
1

Я использую socket.io в проекте webpack/vue (построен vue-cli).Vue - Как использовать другой порт socket.io в тестах?

Это как клиент инициализируется socket.io:

var socketlib = require('socket.io-client') 
var socket = socketlib('http://localhost:3000/') 

Я хотел бы использовать другой порт в тестировании, для того, чтобы дать мне возможность запускать тесты, пока сервер DEV вверх (3001 для испытаний).

Как сделать клиент доступ к порту 3001 в тестах? Нужен ли мне серверный рендеринг?

+1

вам нужно как-то сказать vue-app, что он находится в режиме dev. Это можно сделать, используя рендеринг на стороне сервера, например: установка переменной конфигурации. Или два разных приложения, но они также будут помещены в HTML на стороне сервера. В принципе: да, вам нужна поддержка сторон сервера. – keksnicoh

+0

@keksnicoh вот что я думал. Преобразуйте в ответ, и я соглашусь. – ripper234

ответ

1

Ответ да.

Любой подход - это в основном рендеринг на стороне сервера. Необходимо предоставить информацию для приложения, что она находится в режиме dev. Либо у вас есть отдельная dev-app.js, какая-то конфигурация javascript, некоторый атрибут элемента или что-то такое. Даже если у вас есть отдельный dev-app.js, он должен быть отображен в HTML, тогда скрипт приложения будет dev-app.js.