是否可以更改文档大纲中显示的各种顶级约束的顺序?顶级约束是我的许多标签元素之间的所有各种约束,我想将它们组织成逻辑分组以简化我的工作流程.目前,它们按我添加的顺序列出,但这并不理想.虽然您可以在文档大纲中拖动和重新排序单个元素,但似乎不能重新排序约束.是否有工作或只是我缺少的东西?
我正在尝试构建一个使用 GitHub api 的 CLI。我立即遇到了路障。尽管我已经仔细阅读了介绍性文档,但我看不出以下代码有什么问题。
var userData = require('../userData');
var request = require('request');
module.exports = {
hitEndpoint: function() {
var username = "<redacted_user_name>",
password = "<redacted_password>",
auth = "Basic " + new Buffer(username + ":" + password).toString("base64");
var options = {
method: 'get',
url: " https://api.github.com/<redacted_user_name>",
headers: {
"Authorization": auth,
"User-Agent": "<redacted_whatever_doesnt_matter>"
}
}
request(options, function (error, response, body) {
console.log('error:', error); // Print the error if one occurred
console.log('statusCode:', response && response.statusCode); // Print the response status code if …Run Code Online (Sandbox Code Playgroud) 我有一个组件Slider,它只包含一个<div>用于某些参数标题的组件,以及一个用于控制其值的输入滑块。它需要标题的道具和该属性的当前值来初始化滑块旋钮的位置。我已经阅读了 React 的受控组件,虽然我认为我了解基本概念,但我无法将此输入滑块初始化为this.props.initialValue. 如果我尝试使用 , 给出<input>默认值<input defaultValue={this.props.initialValue}...,我会得到:
bundle.js:357 警告:Slider 包含一个 range 类型的输入,同时具有 value 和 defaultValue 属性。输入元素必须是受控或不受控制的(指定 value 属性或 defaultValue 属性,但不能同时指定两者)。决定使用受控或不受控制的输入元素并删除这些道具之一。更多信息:链接
这就是让我首先阅读的原因controlled components。我想我了解defaultValue与input元素存储状态本身的关系,而受控组件与此完全无关。
那么我的问题是如何将滑块初始化为一个值?谷歌搜索显示很少,除了有以下内容:<input value={this.state.value}...然后因为在我的构造函数中,我正在初始化state.value为this.props.initialValue,我认为组件的第一次渲染会给我一个带有该值的滑块。但事实并非如此。
这是我当前的组件代码:
class Slider extends React.Component {
constructor(props) {
super(props)
this.state = {
value: props.initialValue
}
this.sliderChanged = this.sliderChanged.bind(this)
}
sliderChanged(e) {
this.setState( { value: e.target.value} );
this.props.valueChanged(e.target.value)
}
render() { …Run Code Online (Sandbox Code Playgroud) 几个月来,我一直对 JSX 中缺少注释(命令 + /)感到沮丧。这可能吗?
鉴于:
struct Foo {
let bar: Bar
}
Run Code Online (Sandbox Code Playgroud)
我得到一个方便的初始化器使用:
let foo = Foo(bar: Bar())
但是如果Bar不是本身Codable,或者由于某些其他原因我需要明确地实现Codable,Foo那么便利成员初始化器不再存在:
struct Foo: Codable {
init(from decoder: Decoder) throws {
}
func encode(to encoder: Encoder) throws {
}
let bar: Bar
}
Run Code Online (Sandbox Code Playgroud)
我得到:
let foo = Foo(bar: Bar())
调用中的参数标签不正确(有'bar:',期望'来自:')
是否有可能在这里拥有两全其美?
我注意到在大多数D3文档中,图表,图形,边距等通常都是硬编码的.xAxis是500px等.这对我没有多大帮助.所以我试着想一想如何在React中实现渲染D3内容的动态方法.
例如,在下面的代码中,我只是根据一些时间序列股票价格数据渲染一条线.我有一些D3代码,componentDidMount但考虑到D3的工作方式,它需要具体的宽度和高度值.但是componentDidMount我还没有这些价值观.让我们说这个单线图是网格布局中div中的100个其中一个图.
那么我如何获得div/svg的宽度/高度,然后才计算我的D3代码并渲染svgs?
componentDidMount() {
console.log("componentDidMount")
const data = this.props.data;
const selectX = this.props.selectX;
const selectY = this.props.selectY;
console.log(data)
const xScale = d3ScaleTime()
.domain(d3ArrayExtent(data, selectX))
.range([0, 1]);
const yScale = d3ScaleTime()
.domain(d3ArrayExtent(data, selectY))
.range([1, 0]);
const xAxis = d3AxisBottom()
.scale(xScale)
.ticks(data.length / 8);
const yAxis = d3AxisLeft()
.scale(yScale)
.ticks(3);
const selectScaledX = datum => xScale(selectX(datum));
const selectScaledY = datum => yScale(selectY(datum));
const sparkLine = d3Line()
.x(selectScaledX)
.y(selectScaledY);
const linePath = sparkLine(data);
console.log(linePath);
this.setState({
linePath: linePath
}); …Run Code Online (Sandbox Code Playgroud) 我有很多当地的分支机构。运行git branch列出它们并且它们溢出页面。我经常想在当前签出的分支和我最后一个工作的分支之间切换,或者可能是在最后一个分支之前。该过程是通过眼睛或可能命令 + f 扫描 20-30 个本地分支的列表,如果我有幸记住一个关键字(或票号)。
相反,我想说git branch并让它按结帐顺序显示分支。与您在许多程序中按最近活动排序的许多项目相同的方式。这似乎是订单标准的明显默认选择,我很惊讶它不是 git 的默认设置。
我修改了我的问题,只询问结账排序。我无法找到一个排序谓词,该谓词将按git branch每个分支最近结帐的日期过滤输出。
我的正常迭代周期是我进行一些更改,重建我的应用程序,并且在 chrome 中(打开开发工具)它以某种方式识别(可能是因为 nodemon 在保存时重新启动)并且出现蓝色“重新加载”,我点击它并看到更新的应用程序。
但是,偶尔我会看到以下屏幕。我唯一知道要做的就是关闭开发工具,重新加载,然后再次打开开发工具,这完全终止了迭代周期。我不知道具体是什么原因造成的。在提出这个问题之前,它发生在每次重建中,但我不知道我的开发中有什么不同。我在硬重启 chrome 方面取得了一些成功,但这次没有成功。
为什么会发生这种情况?我该如何解决?