我有一个angular2-webpack应用程序,想要实现stomp,sockjs-client,websocket。
已添加“sockjs”:“0.3.18”, package.json中的“stompjs”:“2.3.3”。
在服务中这样写:
import * as SockJS from 'sockjs-client';
import { Client, Message, Stomp } from 'stompjs/lib/stomp.min';
有一个错误:
can't find name "Client",
can't find name "Message",
can't find name "Stomp",
答案 0 :(得分:2)
为什么期望此代码有效?你在某个地方找到了这个语法的例子吗? Chef::Recipe.send(:include, NodeJs::Helper)
node.force_override['nodejs']['install_method'] = 'binary' # ~FC019
# Shamelessly borrowed from http://docs.opscode.com/dsl_recipe_method_platform.html
# Surely there's a more canonical way to get arch?
arch = if node['kernel']['machine'] =~ /armv6l/
'arm-pi' # assume a raspberry pi
else
node['kernel']['machine'] =~ /x86_64/ ? 'x64' : 'x86'
end
# package_stub is for example: "node-v0.8.20-linux-x64.tar.gz"
version = "v#{node['nodejs']['version']}/"
prefix = node['nodejs']['prefix_url'][node['nodejs']['engine']]
if node['nodejs']['engine'] == 'iojs'
filename = "iojs-v#{node['nodejs']['version']}-linux-#{arch}.tar.gz"
archive_name = 'iojs-binary'
binaries = ['bin/iojs', 'bin/node']
else
filename = "node-#{node['nodejs']['version']}.gz"
archive_name = 'nodejs-binary'
binaries = ['bin/node']
end
binaries.push('bin/npm') if node['nodejs']['npm']['install_method'] == 'binary'
directory "/opt/nodejs/" do
owner "root"
group "root"
mode '0755'
recursive true
action :create
end
bash "get the nodejs-#{node['nodejs']['version']} from nexus" do
cwd ::File.dirname('/opt/nodejs/node-#{node['nodejs']['version']}')
code <<-EOH
wget http://#{node['nexus_ipaddress']}:8080/nexus/content/repositories/thirdparty/com/nodejs/node/#{node['nodejs']['version']}/node-#{node['nodejs']['version']}.xz
tar -xvf node-#{node['nodejs']['version']}.xz
EOH
end
对象只包含小写client
,而且列表中没有其他内容。
只做
Stomp
按照the instructions制作客户。
答案 1 :(得分:0)
还有一个专门用于Angular https://github.com/stomp-js/ng2-stompjs的版本(npm @ stomp / ng2-stompjs)。
它与Webpack,Rollup,RxJS和其他更新的库/工具链一起很好地工作。