// var isDebug = isDebug || false; var useSignalR = useSignalR || false; var isApp = location.href.indexOf('http') !== 0; // var wsUrl = iotCenter + '/hub?group=page'; var server = isApp ? localStorage.getItem('server') : null; var iotCenter = isApp ? server + '/IoTCenter' : ''; var templateUrl = templateUrl || null; var dataUrl = dataUrl||null; var token = isApp ? localStorage.getItem('token') : null; // var connection = useSignalR? new signalR.HubConnectionBuilder().withUrl(wsUrl).build():null; var vm; var app; // var livePlayer; var timer; var decodedFrames; var muted = true; var volume = 0.5; // if (isApp) { Framework7.use(Framework7Vue); } toastr.options.timeOut = 500; toastr.options.positionClass = "toast-top-center"; // //log function debug(message) { if (isDebug) { console.log(message); } } //signalr function connect() { debug('start connect to server:' + Date()); if (connection.state === signalR.HubConnectionState.Disconnected) { connection.start().then(function () { toastr.success('客户端与服务器连接成功!'); }).catch(function (err) { toastr.error('客户端与服务器连接失败!'); setTimeout(connect, 15 * 1000); }); } } function signalRInit() { connection.on('Connected', function (id) { connectionId = id; debug(connectionId); }); connection.onclose(function (err) { setTimeout(connect, 15 * 1000); }); connection.on("ServerToClient", function (method, json, from) { debug(method + ':' + json); onMessage(method, json, from); }); } //加载模板 function loadTemplate() { axios.post(templateUrl, { crossDomain: true }) .then(function (response) { var html = response.data; $('#template').html(html); init(); }) .catch(function (error) { toastr.error('模板加载失败'); debug(error); }); } //加载数据 function loadData() { var formData = new FormData(); formData.append('number', new URI().search(true).number); if (isApp) { formData.append('token', token); } axios.post(dataUrl, formData) .then(function (response) { debug(response); data.model = response.data; toastr.success('数据加载成功!'); }) .catch(function (error) { toastr.error('数据加载失败'); debug(error); }); } // //开始 function start() { if (useSignalR) { signalRInit(); connect(); } if (templateUrl) { loadTemplate(); } else { init(); } } //初始化vue var mounted = mounted || function () { }; function init() { $('#template style').each(function (i, n) { $('head').append(n); }); if (isApp) { data['f7params'] = { root: '#app', id: 'io.framework7.testapp', name: 'Framework7', theme: 'ios', }; } vm = new Vue({ el: '#app', data: data, mounted: function () { mounted(); if (isApp) { this.$f7ready((f7) => { app = this.$f7; $.validator.unobtrusive.parse('form'); }); } if (dataUrl) { loadData(); } }, methods:methods }); } // start();