小编Ray*_*ang的帖子

如何访问ngFor循环中的上一个/后一个元素?

<div *ngFor="let item of list">
  <div *ngIf="item == previousItem"></div>
  <div *ngIf="item == firstItem"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

我们怎样才能使这类事物发挥作用?也就是说,我们如何访问列表中的其他项目(1)与当前索引相关或(2)绝对索引?

编辑:如果列表是一个Observable怎么办?

<div *ngFor="let item of observable">
  <div *ngIf="item == previousItem"></div>
  <div *ngIf="item == firstItem"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

angular

19
推荐指数
2
解决办法
8635
查看次数

如何访问JSON对象.$$ state.value?

警告:我听起来好像不知道我在这里说的是什么,因为我有点不喜欢.我正在通过大量的试错编码自学Javascript和AngularJS.

我有一些javascript代码(犹豫要复制在这里因为它是一团糟)返回一个具有以下结构的Object: 在此输入图像描述

我想保存到变量的是对应于图片中的Object.$$ state.value的对象.这个对象有用户名,哈希和盐,这是我关心的.我不知道所有其他像$$州的东西是什么,或者他们是如何到达那里的.

但是,如果我这样做(让我们调用主对象"whatIHave"):

var whatIWant = whatIHave.$$state.value;
Run Code Online (Sandbox Code Playgroud)

这不起作用.whatIWant是null.

有谁知道这里发生了什么?什么是$$状态,它是如何实现的,以及如何提取我想要的值?

javascript json angularjs

6
推荐指数
1
解决办法
1万
查看次数

Kotlin:无法访问伴生对象中定义的枚举

根据 Kotlin 文档:

只需使用类名作为限定符即可调用伴生对象的成员。

为什么它在这里似乎不起作用?

class Foo {
  companion object {
    enum class Type { A, B, C }
  }
}

class Bar {
  val typeA = Foo.Companion.Type.A  // works
  val typeB = Foo.Type.B            // error: "Unresolved reference: Type"
}
Run Code Online (Sandbox Code Playgroud)

kotlin

6
推荐指数
1
解决办法
2844
查看次数

React:键对于列表以外的其他情况有用吗?

我在渲染列表时可以找到使用键突出显示的所有信息,例如:

<ul>
    {array.map((item, index) => <li key={index}>{item}</li>)}
</ul>
Run Code Online (Sandbox Code Playgroud)

除了列表之外,是否还有其他情况下提供密钥也有帮助?

简单地为页面上的每个非静态元素提供键是否有缺点?

javascript arrays reactjs

6
推荐指数
1
解决办法
1348
查看次数

NGINX:如何返回内联 html?

我想实现这样的目标:

server {
    listen 80;
    location / {
        return 200 <html><body>Hello World</body></html>
    }
}
Run Code Online (Sandbox Code Playgroud)

即,任何请求都应返回内联 html。这可以用 NGINX 实现吗?

编辑:

我试过这个:

server {
    listen 80;
    location / {
        return 200 '<html><body>Hello World</body></html>'
    }
}
Run Code Online (Sandbox Code Playgroud)

但是在浏览器中测试并没有呈现 html,而是浏览器试图下载一个包含 html 的文件,这不是我想要的行为。

nginx

5
推荐指数
1
解决办法
1489
查看次数

离子2如何使离子列表从底部向上生长?

这是我的代码的要点:

<ion-content>
  <ion-list>
    <ion-item *ngFor="let item of array">{{item.name}}</ion-item>
  </ion-list>
</ion-content>
<ion-footer>
  <ion-searchbar (ionInput)="search()"></ion-searchbar>
</ion-footer>
Run Code Online (Sandbox Code Playgroud)

我们的想法是在屏幕底部设置一个搜索栏,其上方的列表会根据搜索栏输入而变化.但是,如果项目很少,此代码将使列表自上而下填充它与搜索栏之间的大量空白.我希望列表能够拥抱搜索栏(基本上与离子内容的底部对齐),同时仍然可以在离子内容中保持可滚动状态.有什么方法可以做到这一点?

css ionic-framework ionic2 angular

4
推荐指数
1
解决办法
3021
查看次数

如何在Angular中获取DOM元素的样式?

我知道你可以使用ngStyle来设置元素的样式.但是如何获取元素的样式(即浏览器呈现的默认样式)?

此代码不起作用,但表达我正在尝试做的事情:

<p>TEXT</p>
width of TEXT element is {{textElement.width}}
height of TEXT element is {{textElement.height}}
Run Code Online (Sandbox Code Playgroud)

我希望p元素正常呈现(但是浏览器想要,而不是告诉它宽度或高度).但是,我想知道渲染的宽度和高度是多少.如何绑定东西来捕获它?

编辑:有些人问我想要做什么宽度和高度.我想做的是这样的:

<p *ngIf="!isEditing">{{myText}}</p>
<textarea *ngIf="isEditing" [(ngModel)]="myText"></textarea>
Run Code Online (Sandbox Code Playgroud)

默认情况下,显示p而不显示textarea.如果用户进入编辑模式,则p将被textarea替换.我想设置textarea的宽度和高度以匹配p,因此过渡看起来无缝.有一个更好的方法吗?

angular

4
推荐指数
2
解决办法
1万
查看次数

Kotlin:如何限制区块内的范围?

在Java中,可以使用花括号来描述具有自己范围的代码块:

void f() {
  {
    int x = 1
    // do something with x
  }

  // x not visible here anymore
}
Run Code Online (Sandbox Code Playgroud)

这怎么在Kotlin完成?

kotlin

3
推荐指数
1
解决办法
87
查看次数

如何从typeof创建接口?

如何从对象动态“向后”到接口?

const o = {
  a: 1,
  b: "hi"
}

interface i = typeof o; // how to write this?
Run Code Online (Sandbox Code Playgroud)

结果应等同于:

interface i {
  a: number,
  b: string
}
Run Code Online (Sandbox Code Playgroud)

javascript typescript

3
推荐指数
1
解决办法
863
查看次数

如何使用 Spring Data R2DBC 控制事务流的流程?

最近似乎已经实现了对事务流的支持,但由于它的新颖性,代码示例并不多。

有人可以展示一个事务流的例子,它执行一系列数据库插入,然后在成功时返回一些值,但在插入之间有一个中游检查点来测试某些条件,并可能回滚事务并根据检查点返回不同的值结果?

spring-data-r2dbc r2dbc

3
推荐指数
1
解决办法
1920
查看次数

Vaadin:数据返回后更新 UI

@SpringUI
public class VaadinUI extends UI {
  ...
  String sql = "SELECT * FROM table1";
  button.addClickListener(e -> layout.addComponent(new Label(service.evalSql(sql))));
  ...
Run Code Online (Sandbox Code Playgroud)

目前,当按下按钮时,页面会等待 evalSql() 从数据库返回结果,然后再添加新标签。

如何更改此设置,以便当按下按钮时,立即添加一个新标签,设置为初始占位符字符串(“获取结果..”),但在数据库返回某些内容后更新为结果字符串?

spring vaadin vaadin8

2
推荐指数
1
解决办法
2655
查看次数

Kotlin,Jackson:无法在主要构造函数中注释@JsonCreator

我想@JsonCreator使用主要构造函数进行注释,如下所示:

// error
@JsonCreator class User(
    @JsonProperty("username") var username: String,
    @JsonProperty("password") var password: String
) {
  // ...
}
Run Code Online (Sandbox Code Playgroud)

但是@JsonCreator注释给出错误“此注释不适用于目标'class'”。

使用辅助构造函数有效,但这是唯一(或最佳)方法吗?:

// works, but is there a better way?
class User @JsonCreator constructor(
    @JsonProperty("username") var username: String,
    @JsonProperty("password") var password: String
) {
  // ...
}
Run Code Online (Sandbox Code Playgroud)

jackson kotlin

2
推荐指数
1
解决办法
1971
查看次数