小编Jon*_*aem的帖子

React 16.7 - React.SFC现已弃用

我用来声明像这样的无状态组件:

const example: React.SFC<IExample> = ({propsType}) => ();
Run Code Online (Sandbox Code Playgroud)

然而,证监会现已被弃用,也许Dan Abramov的这篇推文解释了原因.

现在SFC被弃用了我们应该使用什么?

deprecated typescript reactjs deprecation-warning

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

未捕获(承诺):消息端口在收到响应之前关闭

因此,在提出问题之前,我想指出,我在这个问题上唯一能找到的就是这个 stackoverflow 问题。这个问题表明这是 wappalyzer 的问题,并在 4.0.1 版本中修复。不过我使用的是 wappalyzer 版本 5.1.4 并且是最新的。


我正在构建一个基于 MEAN 堆栈的网络应用程序,很长一段时间以来一切都按预期工作,直到我的 google-chrome 控制台中不断弹出此错误:

控制台快照

每次我点击我的应用程序标题,并使用我的前端路由加载不同的组件/模块时,都会出现此错误,但是我没有看到网络应用程序向我呈现的内容有任何问题(这并不是说我丢失了数据)

有关错误的更多详细信息: 错误描述

我不知道发生了什么事,也不知道这个问题从何而来。

google-chrome node.js express mean-stack angular

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

我应该避免在私有 git 存储库中使用密钥吗?

目前,我在一个配置文件中拥有我所有的各种密钥,该文件在 PRIVATE 存储库上进行版本控制。该代码位于受信任的一侧(Github)。我应该避免在 git 中控制这个配置文件的版本吗?

如果没有,那么您将如何与开发团队共享此文件?

git security configuration config github

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

Angular5。如何动态地添加链接到包含特定标签的字符串。喜欢 '@'

我有一个看起来像这样的模板视图

<div class="post-content">
      <p>{{ post.content }}</p>
</div>
Run Code Online (Sandbox Code Playgroud)

其中post.content是字符串的一种类型。

该字符串可以包含一个或多个引用不同用户的@标记,也可以不包含。例如:“ @用户名”。我想通过链接使该标签可点击。将其作为定位标记插入的种类:

<a>@username</a>
Run Code Online (Sandbox Code Playgroud)

到目前为止,我尝试过手动对其进行字符串操作,然后将锚标签插入字符串中。但是,这只是在视图中显示为纯文本。

我该如何在Angular 5中做到这一点?

html string anchor typescript angular

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

什么是Angular'ng-container'的React等价物

我希望不使用div元素,而希望使用Angular中的'ng-container'这样的元素来避免DOM中无用的div元素。

什么是Angulars'ng-container'的React等效项?

ng容器的说明

html dom reactjs angular

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

Angular 7 - HTML5 Fullscreen API 如何工作?我有很多错误

我使用 Angular 7,我想要一个按钮来让我的应用程序全屏显示。我使用 HTML5 全屏 API 并创建了 2 个函数:

openfullscreen() {
    // Trigger fullscreen
    console.log('gg');
    if (document.documentElement.requestFullscreen) {
      document.documentElement.requestFullscreen();
    } else if (document.documentElement.mozRequestFullScreen) { /* Firefox */
      document.documentElement.mozRequestFullScreen();
    } else if (document.documentElement.webkitRequestFullscreen) { /* Chrome, Safari and Opera */
      document.documentElement.webkitRequestFullscreen();
    } else if (document.documentElement.msRequestFullscreen) { /* IE/Edge */
      document.documentElement.msRequestFullscreen();
    }
    this.isfullscreen = true;
  }

  closefullscreen(){
    if (document.exitFullscreen) {
      document.exitFullscreen();
    } else if (document.mozCancelFullScreen) { /* Firefox */
      document.mozCancelFullScreen();
    } else if (document.webkitExitFullscreen) { /* Chrome, Safari and Opera */
      document.webkitExitFullscreen(); …
Run Code Online (Sandbox Code Playgroud)

html fullscreen typescript angular-cli angular

3
推荐指数
2
解决办法
6646
查看次数

在 groovy 中迭代 XML 文件的正确方法是什么?

我正在尝试遍历 XML 文件并打印出上下文。然而,我似乎无法解析父元素的主体,以使用这种迭代方式查找子元素:

new XmlSlurper().parseText(getServiceConfigXml())
            .'**'
            .findAll { it.name() == 'project' }
            .each { project ->
println "Project: ${project.attributes()}"
new XmlSlurper().parseText("${project.text()}")
              .'**'
              .findAll { it.name() == 'service' }
              .each { service ->
    println "\tService: ${service.attributes()}"
    new XmlSlurper().parseText("${service.text()}")
                    .'**'
                    .findAll { it.name() == 'endpoint' }
                    .each { endpoint ->
        println "\t\tEndpoint: ${endpoint.attributes()} - ${endpoint.text()}"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

运行时,我得到这个堆栈

项目:[名称:普通]

[致命错误] :1:1: 序言中不允许出现内容。

捕获:org.xml.sax.SAXParseException;行号:1;列数:1;序言中不能有内容。

org.xml.sax.SAXParseException; 行号:1;列数:1;序言中不能有内容。在 com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1239) 在 com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:第643章

进程已完成,退出代码为 1

所以看来我无法将“${project.text()}”解析为第二个 XMLSlurper。(注意第一个 println 正确执行)

那么做我想做的事情的正确方法是什么?

编辑:这是我想要迭代的 XML 文件的一个小示例:

<project name='Common'>
<service …
Run Code Online (Sandbox Code Playgroud)

xml groovy

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

Angular 5:如何在中央文件中定义调色板

我想在我的项目的中央文件中声明我的调色板。

目前我正在使用一个包含地图的 Injectable 来引用我使用的所有颜色。例子:

@Injectable()

export class COLOR_DICTIONARY {
private static COLOR_MAP: Map<string, string> = new Map<string, string>();

 constructor() {
    COLOR_DICTIONARY.COLOR_MAP.set('primary', '#339988');
 }

 get(key: string) {
    return COLOR_DICTIONARY.COLOR_MAP.get(key);
 }
}
Run Code Online (Sandbox Code Playgroud)

然而,这迫使我使用 ngStyle 引用标记中的所有颜色,而不是直接在 css 中

[ngStyle]="{'color': color_dictionary.get('primary')}"
Run Code Online (Sandbox Code Playgroud)

我目前正在对整个网站进行更大规模的重新设计,改变样式文件和标记文件中的样式变得很麻烦。(甚至用于添加/更改/删除颜色的打字稿文件)。

如何在中央文件中引用调色板 - 最好是更静态的文件,如 XML 文件或其他内容,可以直接在 css 文件中引用。

我愿意将样式转换为 scss 文件,如果这会让它更容易,或者它有利于目的。

该项目与 webpack 捆绑在一起,因此也感谢有关如何捆绑解决方案的任何提示。

css sass styling color-palette angular

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

Angular 5:选择元素上的 ngModel 绑定不会更新

我有一个选择元素的标记:

<select type="submit" ([ngModel])="selectedValue" #item (change)="onSelectItem(item.value)">
                <option>Pick an option</option>
                <option *ngFor="let object of objects">{{ object.value }}</option>
</select>
Run Code Online (Sandbox Code Playgroud)

当我从打字稿更新 ngModel 绑定时,没有任何反应。本质上我只是在组件中这样做:

ngOnInit() {
  this.selectedValue = 'something' // One of the options from the list of objects
}
Run Code Online (Sandbox Code Playgroud)

然而,什么也没有发生。我尝试将其更新为的值位于对象列表中(在 *ngFor 中) - 如果这很重要的话。

html html-select angular

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

玩笑中的“shallow”和“render”有什么区别?

开玩笑,使用浅层和酶渲染有什么区别?

这是两者的示例:

测试浅层渲染:

import "jest";
import * as React from "react";
import { shallow } from "enzyme";
import Item from "../item.component";

describe("Item", () => {
  it("renders correct", () => {
    const item = {
        name: "A"
      };

    const component = shallow(
      <Item item={item}/>
    );

    expect(component).toMatchSnapshot();
  });
});
Run Code Online (Sandbox Code Playgroud)

使用 render 测试渲染

import "jest";
import * as React from "react";
import { render } from "enzyme";
import Item from "../item.component";

describe("Item", () => {
  it("renders correct", () => {
    const item = …
Run Code Online (Sandbox Code Playgroud)

javascript testing reactjs jestjs

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

Angular Material MatDatePicker - 如何保持打开状态并将其与输入字段分开

我正在使用来自 Angular Material 的 MatDatePicker。

最好我只想使用日期选择器中的日期选择视图,而没有打开它的输入字段。

我还想让日期选择器保持打开状态,因此它静态地是视图的一部分。

目前日期选择器设置如下:

<input type="text" matInput [matDatepicker]="datePickerFrom" readonly name="fromDate" [(ngModel)]="lookup.FromDate" #fromDate="ngModel">
<mat-datepicker #datePickerFrom [opened]="true" [startView]="'month'">
</mat-datepicker>
Run Code Online (Sandbox Code Playgroud)

日期选择器按预期启动打开,但由于它位于前台,因此当用户单击日期选择器本身以外的任何其他地方时,它将关闭。

此外,日期选择器需要一个输入字段 - 预期用途是从输入字段打开日期选择器,并使用日期选择器视图选择日期。是否可以只使用日期选择器视图来选择一个数据,而没有输入字段?

也许 Angular Material Date Picker 不是达到这个目的的方法,所以任何替代方案都可能是这个问题的真正答案。

datepicker angular-material angular

0
推荐指数
1
解决办法
1835
查看次数