我有一个具有此方法的服务:
export class TestModelService {
public testModel: TestModel;
constructor( @Inject(Http) public http: Http) {
}
public fetchModel(uuid: string = undefined): Observable<string> {
if(!uuid) {
//return Observable of JSON.stringify(new TestModel());
}
else {
return this.http.get("http://localhost:8080/myapp/api/model/" + uuid)
.map(res => res.text());
}
}
}
Run Code Online (Sandbox Code Playgroud)
在组件的构造函数中,我订阅如下:
export class MyComponent {
testModel: TestModel;
testModelService: TestModelService;
constructor(@Inject(TestModelService) testModelService) {
this.testModelService = testModelService;
testService.fetchModel("29f4fddc-155a-4f26-9db6-5a431ecd5d44").subscribe(
data => { this.testModel = FactModel.fromJson(JSON.parse(data)); },
err => console.log(err)
);
}
}
Run Code Online (Sandbox Code Playgroud)
如果一个对象来自服务器,但是我试图创建一个可以使用给定subscribe()
的静态字符串调用的observable (当testModelService.fetchModel()
没有收到uuid 时会发生这种情况),这样就可以了.所以在这两种情况下都有无缝处理.
我得到了这段代码:
演示:http://jsfiddle.net/z21nz89d/2/
HTML:
<nav class="navbar navbar-default" role="navigation">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Brand</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li class="active"><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu" role="menu"> …
Run Code Online (Sandbox Code Playgroud) 我在Angular 5应用程序中使用此表达式:
{{ viewDate | date:'MMM' }}
Run Code Online (Sandbox Code Playgroud)
月份缩写以英语显示.如何将输出切换为德语?
我正在尝试使用解析器来根据路由包含的给定参数检索数据。
不幸的是,当我添加另一个数据流时,我的数据依赖于解析器从未真正解析过。
如果我直接返回一个立即解决的值,一切正常。我调试了这种情况,看到我收到了所有部分信息,但最终未能真正解决。
这是一个快速示例。如果需要更多代码来理解问题,请联系我。
我的服务:
export class MyService {
get(bar) {
return of(new Foo(bar));
}
}
Run Code Online (Sandbox Code Playgroud)
SecondService(这个从后端检索数据):
export class SecondService {
private readonly _observable: Observable<Bar>;
constructor() {
this._observable = merge(
// Other manipulations
).pipe(
// other manipulations
shareReplay(1)
)
}
observable(): Observable<Bar> {
return this._observable;
}
}
Run Code Online (Sandbox Code Playgroud)
解析器:
export class MyResolver {
constructor(_secondService: SecondService, _myService: MyService) {}
resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<Foo> {
// Does not work - Simply does not resolve
// return this._secondService
// .observable()
// .pipe(
// …
Run Code Online (Sandbox Code Playgroud) 我有一个域名,我可以浏览到example.com:1234
.现在我不想总是在最后键入端口,而是在浏览子域时让nginx将我重定向到静态URL,例如.status.example.com
.
我尝试过编写重定向,但它根本不起作用.
server {
listen 80;
server_name status.example.com;
return 301 $scheme://www.example.com:1234;
}
Run Code Online (Sandbox Code Playgroud)
哪里是我的错误?它是服务器块吗?我错过了一些基本的东西吗?
阅读了各种帖子和线索后,我无处可寻,需要您的帮助。
我确实有一个Mac OS X的Qt应用程序,该应用程序在某些时候将在后台使用,并且不会激活。在这种情况下,我想添加一个全局热键,以便用户可以通过单击预定义的热键轻松地打开或关闭某些功能。当应用程序处于后台且未聚焦时,以下内容不起作用。
QShortcut *shortcut = new QShortcut(QKeySequence(Qt::Key_F12), parent);
shortcut->setContext(Qt::ApplicationShortcut);
Run Code Online (Sandbox Code Playgroud)
到目前为止,我发现Qxt
Qt 5.5恰好已经过时了。然后是DDHotkey,它需要某个编译器,出于各种原因,我们无法使用该编译器。最后,我找到了添加一个全局变量的解决方案,该全局AppleScript
变量再次注册了一个事件,而不是我要查找的事件。
tell application "System Events" to tell process "myApp"
click menu item "myButton" of menu 1 of menu bar item "Menu" of menu bar 1
end tell
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以使用objective-c
或cocoa
确切地完成我想要的?如果我可能错过了什么,请引导我朝正确的方向前进。
提前致谢!
对于寻求更多Qt方法的用户,请检查以下存储库:https : //github.com/ddqd/qxtglobalshortcut5
它利用了过时的 qxt
库,但又使它重新工作。直到Qt 5.4为止,该人都对其进行了测试,我们在Qt 5.5下成功使用了它。
更新我们的信号/插槽功能时,我们遇到了未定义的问题.这是我们收到的错误:
这是以前的工作,没有问题,工作得很好:
Mainwindow.cpp
connect(_restrict, &Restrict::windowChanged, _record, &Record::onWindowChanged);
Run Code Online (Sandbox Code Playgroud)
Mainwindow.h:
private slots:
void onWindowChanged(QDateTime current, QString processName, QString windowTitle, QString url, long prevPID, long currPID);
Run Code Online (Sandbox Code Playgroud)
record.h:
public slots:
void onWindowChanged(QDateTime time, QString processName, QString windowTitle, QString url, long prevPID, long currPid);
Run Code Online (Sandbox Code Playgroud)
restrict.h:
signals:
void windowChanged(QDateTime time, QString processName, QString windowTitle, QString url = "", long prevPID = -1, long currPid = -1);
Run Code Online (Sandbox Code Playgroud)
我们改变后的数据:
Mainwindow.cpp
connect(_restrict, &Restrict::windowChanged, _record, &Record::onWindowChanged);
Run Code Online (Sandbox Code Playgroud)
Mainwindow.h:
private slots:
void onWindowChanged(QDateTime current, QString processName, QString windowTitle, QString url, long prevPID, …
Run Code Online (Sandbox Code Playgroud) 根据 Ruby on Rails 指南(http://guides.rubyonrails.org/i18n.html#using-safe-html-translations),我需要做的就是在不调用html_safe
它们的情况下呈现我的翻译,就是让键名以_html
. 这是我尝试过的:
en:
breadcrumbs:
root_html: "<i class='material-icons'>home</i>"
Run Code Online (Sandbox Code Playgroud)
像这样调用它:
I18n.t('breadcrumbs.root_html')
Run Code Online (Sandbox Code Playgroud)
导致输出是在我的翻译中定义的这个字符串,而不是呈现的 HTML。我究竟做错了什么?
使用 Ruby on Rails 4.2.1。提前致谢!
我在代码库中看到了这段代码,我有点需要理解的问题void = (page)
.根据/sf/answers/2399220911/,返回类型=>
是void
在我的情况下.那怎么= (page) => {}
办?如果我不用胖箭头功能写它,它的等效功能是什么?
这是代码:
private navigateTo: (page: string) => void = (page) => {
// display page
}
Run Code Online (Sandbox Code Playgroud) 由于某些原因,我无法在content_for
块内渲染局部视图。
这是代码:
/ => index.html.slim
doctype html
html lang="de"
= render "layouts/headinclude"
body
= yield
- if Rails.env.production?
- content_for :additional_headincludes do
= render "layouts/hotjar"
Run Code Online (Sandbox Code Playgroud)
由于某种原因,以下内容不包括我的部分内容(完全渲染后):
/ # => _headinclude.html.slim
head
title= @title || "My Title"
link href='//fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'
- if content_for?(:additional_headincludes)
= yield :additional_headincludes
Run Code Online (Sandbox Code Playgroud)
我看不出为什么这行不通。任何帮助表示赞赏。当直接在我的headinclude
-partial 内部渲染部分时,一切正常。
这是我的 MpdController:
class MpdController < ApplicationController
require 'ruby-mpd'
def status
mpd = MPD.new
mpd.connect
# ...
mpd.disconnect
end
def help
mpd = MPD.new
mpd.connect
# ...
mpd.disconnect
end
def pause
mpd = MPD.new
mpd.connect
# ...
mpd.disconnect
end
end
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,每个方法都需要一个新的 MPD 实例并将其保存到我的变量中。现在,是否可以通过 Rails 提供的 before_action 和 after_action 来做到这一点?
我想到了类似的事情:
before_action :new_mpd
after_action :disconnect_mpd
def new_mpd
mpd = MPD.new
mpd.connect
mpd
end
def disconnect_mpd(mpd)
mpd.disconnect
end
Run Code Online (Sandbox Code Playgroud)
它需要从前置过滤器获取返回值,然后将其进一步传递到后置过滤器。
这是有用的东西吗?感谢您的帮助。
我需要用户输入三个数字和我的程序来显示这些数字中最大的数字.我似乎无法弄清楚问题.我得到的结果是"最大的数字是0.000"
#include <stdio.h>
int main()
{
double n1, n2, n3;
printf("Enter your three numbers: ");
scanf("%1f %1f, %1f", &n1, &n2, &n3);
if (n1>= n2 && n1>= n3)
printf("The greatest number is %f", n1);
if (n2>=n1 && n2>= n3)
printf("The greatest number is %f", n2);
if (n3>=n2 && n3>=n1)
printf("The greatest number is %f", n3);
return 0;
}
Run Code Online (Sandbox Code Playgroud) angular ×2
c++ ×2
qt ×2
typescript ×2
angular5 ×1
angular6 ×1
c ×1
cocoa ×1
content-for ×1
css ×1
date ×1
footer ×1
html ×1
javascript ×1
macos ×1
nginx ×1
observable ×1
partial ×1
promise ×1
rails-i18n ×1
redirect ×1
rendering ×1
rxjs ×1
static ×1
subdomain ×1