小编Ror*_*ane的帖子

如何从字符串中删除控制字符?

我的页面上有表单,用户可以在其中键入一些文本并提交.然后将文本发送到服务器(node.js上的REST API)并保存到DB(postgres).

问题是偶尔会将一些奇怪的字符(控制字符)保存到DB中 - 例如转义控制字符(^ [)或退格控制字符(^ H).通常它不会破坏任何东西,因为这些字符是不可见的,所以html正确呈现.但是,当我为RSS阅读器提供xml内容时,它们(阅读器)会因为这些控制字符而返回"格式错误的XML"(删除后它们会起作用).

我的问题是我如何从客户端级别(javascript)或服务器级别(javascript/node.js)的字符串中删除这些字符?

html javascript

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

Passport-js如何创建自定义策略

我希望创建自己的策略.

我有client_id,client_secret和相关的元数据.我也知道执行的流程.所以我想创建自己的策略并添加我的自定义逻辑进行身份验证.

我查看了护照策略,但我不了解如何实施自己的策略.有人能解释一下吗?

javascript authentication node.js oauth-2.0 passport.js

15
推荐指数
2
解决办法
9249
查看次数

'cssRules'和'rules'对象有什么区别?

有什么区别:

document.styleSheets[0].cssRules
Run Code Online (Sandbox Code Playgroud)

document.styleSheets[0].rules
Run Code Online (Sandbox Code Playgroud)

我注意到第二个也得到了IE8和之前的支持.但是这两个对象有什么区别?

javascript css document

14
推荐指数
2
解决办法
1148
查看次数

IntelliJ IDEA GUI构建器 - 未生成Java代码

我在IntelliJ IDEA GUI设计器中设计了我的GUI表单,并选择了Project Settings→GUI Designer中的单选按钮来生成源代码而不是.class文件,但我的.java代码文件如下所示:

public class PovRayEmptyProjectWizardPanelVisual {
    private JTextField textField1;
    private JTextField textField2;
    private JTextField textField3;
    private JButton button1;
}
Run Code Online (Sandbox Code Playgroud)

就是这样 - 没有生成创建GUI的代码.如何手动触发此类代码生成,以便我可以.java使用Maven 编译生成的文件?

java user-interface code-generation intellij-idea gui-builder

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

流接口与对象类型别名

这些Flow类型定义有什么区别?

interface Vehicle {
  start(): void,
  stop(): void
}
Run Code Online (Sandbox Code Playgroud)
type Vehicle = {
  start(): void,
  stop(): void
};
Run Code Online (Sandbox Code Playgroud)

据我所知,它们可以以相同的方式使用.

interface flowtype

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

转换为3位十六进制颜色代码

我一直在使用的CSS 3位十六进制颜色值很长一段时间:#fff,#999,#069等我可以看到重复的字母/数字合并创建一个3位数的十六进制颜色代码,但我不完全了解能够在PHP中编写转换器的模式.有这方面的文件吗?

编辑:哦,也许我的问题不明确.我需要知道一些6位十六进制颜色值如何转换为3位数.xxxxxx(ffffff)和xxyyzz(006699) - 这些只是两种模式,对吗?

css php hex colors

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

Makefile中规则的参数

我需要制作一个Makefile,它应该有一个run规则.但是,运行需要一些参数.

有没有人知道如何在Makefile中运行规则时传递参数?我希望能够run通过键入来运行带有参数的规则make run foo bar.

我试过这个,但它不起作用:

run:
    make compile
    ./scripts/runTrips $1 $2 $PLACES $OUT $VERS
Run Code Online (Sandbox Code Playgroud)

我想要提供的参数是第一个和第二个.

unix makefile

12
推荐指数
2
解决办法
9296
查看次数

jQuery - 单击启用/禁用页面上的所有样式表

是否可以通过单击"禁用/启用CSS"按钮检测当前页面上的所有样式表,并在第一次单击时禁用它们以便不应用任何样式,然后在第二次单击时再次还原它们?知道jQuery会是什么样子,如果可能的话?

css jquery stylesheet

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

状态机和UI:基于"节点级"状态而不是"叶子"状态进行渲染

在继续之前,我想指出这个问题的标题很难说.如果应该使用更合适的标题,请告诉我,以便我可以更改它并使这个问题对其他人更有用.

好的,关于问题......我目前正在研究React/Redux项目.我做出的一个设计决定是几乎完全用(分层)状态机来管理app状态和UI,原因有很多(我不会深入研究).

我利用Redux将我的状态树存储在一个名为的子状态中store.machine.然后Redux子系统的其余部分负责存储应用程序'数据'.通过这种方式,我将这两个问题分开,以便它们不会跨越边界.

除此之外,我还将(React)方面的问题分开 - 使用"状态组件"和"UI组件".状态组件几乎完全处理状态流,而UI组件是在屏幕上呈现的那些组件.

我有三种类型的状态组件:

  • 节点:这种状态组件处理状态分支.它根据当前状态(一种委托形式)确定应该呈现哪个组件.
  • Leaf:这种状态组件存在于状态树的叶子中.它的工作仅仅是渲染一个UI组件,传递负责更新状态树的必要"调度"回调.
  • 容器:这种状态组件封装了要并行呈现的节点UI组件.

对于我的情况,我们只关注NodeLeaf组件.我遇到的问题是,当UI组件基于"叶子状态"呈现时,可能存在"更高级别"状态可能影响UI应该如何呈现的情况.

采用这种简化的状态结构: 简化的州结构

AppStateHome州开始.当用户单击登录按钮时,将to_login调度操作.负责管理的减速机AppState将接收此动作并将新的当前状态设置为Login.

同样,在用户键入其凭据并完成验证后,将调度a successfailaction.同样,这会被同一个减速器接收,然后转换到适当的状态:User_PortalLogin_Failed.

React组件结构如下所示: 反应组件结构

我们的顶级节点AppState作为道具接收,检查当前状态是什么,并呈现/委托给其中一个子Leaf组件.

然后,Leaf组件呈现传递回调的具体UI组件,以允许它们分派必要的操作(如上所述)以更新状态.虚线表示'state'和'ui'之间的边界,并且此边界仅在Leaf组件处交叉.这使得可以独立地处理StateUI,因此我想维护它.

这是事情变得棘手的地方.想象一下,为了论证,我们有一个顶级状态来描述应用程序所使用的语言 - 让我们说EnglishFrench.我们更新的组件结构可能如下所示: 更新的组件结构

现在我们的UI组件必须以正确的语言呈现,即使描述它的状态不是Leaf.处理UI呈现的Leaf组件没有父状态的概念,因此没有应用程序所在语言的概念.因此,语言状态无法在不破坏模型的情况下安全地传递给UI.要么必须删除状态/ UI边界线,要么需要将父状态传递给子节点,这两者都是可怕的解决方案.

一种解决方案是"复制" AppState每种语言的树结构,实质上是为每种语言创建一个全新的树结构......如下所示: 每种语言的全新树结构

这几乎和我上面描述的两个解决方案一样糟糕,并且需要不断增加的组件来管理事物. …

javascript state-machine reactjs redux react-redux

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

无法将对象数组分配给Flow中的联合类型数组

我正在学习Flow,因此我正在开发一个带有JavaScript和Flow的小爱好项目.我有一个类Foo和一个不同的类Bar,我想在一个Foo对象数组中作为构造函数中的一个选项.但是,我还希望能够为每个这样的对象发送一些其他数据,因此我希望有一个数组,其中每个元素都是普通Foo对象,或者Foo包含在数组或对象中的对象.

但是,当我尝试为此编写代码时,我得到了一些奇怪的错误,我不明白其中的原因.据我所知,它认为存在类型冲突,因为Foo它与所有类型的联合不兼容,但据我所知它应该只需要与它们中的至少一个兼容......

这是重现我得到的确切错误所需的最小代码(链接到Try Flow示例):

// @flow

class Foo { }

interface BarOptions {
  foos: ( Foo | [ Foo ] | { foo: Foo } )[];           // line 6
}

class Bar {
  constructor(options?: BarOptions) { }
}

const foo: Foo = new Foo();

const bar = new Bar({
  foos: [ foo ],                                    // line 16
});
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Line 6:
  tuple type: This type …
Run Code Online (Sandbox Code Playgroud)

javascript flowtype

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