【发布时间】:2016-03-30 14:28:10
【问题描述】:
我在 phoenix 中有以下文件夹结构:
web/
static/
js/
app.js
script.js
socket.js
app.js 有...
import socket from "./socket"
import script from "./script"
brunch-config.js 有...
files: {
javascripts: {
joinTo: "js/app.js"
}
// ...
}
script.js 有...
$('#some-button').on('click', function() {
connectToChannel(data);
});
socket.js 有...
import {Socket} from "phoenix"
let socket = new Socket("ws://example.com/updates", {params: {"auth-token": "AUTH-TOKEN"}})
function connectToChannel(data) {
socket.connect()
let channel = socket.channel("updates:new", {})
channel.join()
.receive("ok", resp => { console.log("Joined successfully", resp) })
.receive("error", resp => { console.log("Unable to join", resp) })
channel.on("update", payload => {
console.log(payload);
})
}
export default socket
...然而,当我单击 some-button 时,我在浏览器的控制台中收到以下错误:
Uncaught ReferenceError: connectToChannel is not defined
如果我将socket.js 的内容放入script.js 中,则连接成功,但我想将它们分开。
【问题讨论】:
标签: jquery function sockets phoenix-framework brunch