我们有一个 SignalR 客户端回调方法,当我们离开和回到它的包含页面时,它会被多次调用。例如:页面是salesUpdate.html(Angular模板),在这个页面第一次来的时候,回调会在它的事件发生时执行一次。现在,当我们从这个页面移到另一个页面(比如 purchaseUpdate.html),然后回到这个页面,即 salesUpdate.html,这个 SignalR 客户端回调方法将执行两次。当我们离开页面并返回页面时,它会执行多少次。从服务器端,这个方法是从 ASP.NET Web API 调用的,并且 Web API 只命中一次,所有后续的回调执行都不会命中 Web API。这是客户端回调方法:
var con;
var apiMsgProxy;
$(document).ready(function () {
con = $.hubConnection('http://localhost:51123/signalr');
apiMsgProxy = con.createHubProxy('salesHub');
apiMsgProxy.on('SendSaleUpdate', function (uMsg) {
console.log("Call back SendSaleUpdate called - " + uMsg);
});
con.start().done(function () {
console.log("SignalR connection opened - " + con.state);
}).fail(function () {
console.log('Could not Connect SignalR hub!');
});
});
Run Code Online (Sandbox Code Playgroud)
任何指向此的指针将不胜感激。
我将 Angular 项目从 Angular 10 更新到 11x。一切正常,除了一个关于运行项目使用的警告ng serve(在 ng serve 中没有任何选项)。警告是:
不推荐使用选项“sourceMap”:改用浏览器构建器中的“sourceMap”选项。
警告未出现在 中ng build。
以下是angular.json项目中浏览器构建器部分的样子:
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/my-app",
"index": "src/index.html",
"sourceMap": true,
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "tsconfig.app.json",
"aot": true,
"assets": [
"src/favicon.ico",
"src/assets"
],
Run Code Online (Sandbox Code Playgroud)
Angular 11 中的某些相关内容发生了变化?如何消除此警告?