我正在 React 中使用深度嵌套的状态对象。我的代码库要求我们尝试坚持使用函数组件,因此每次我想更新嵌套对象内的键/值对时,我都必须使用钩子来设置状态。不过,我似乎无法了解更深层次的嵌套项目。我有一个带有 onChange 处理程序的下拉菜单。. .in 的 onChange 处理程序是一个内联函数,可以直接设置正在更改的任何键/值对的值。
但是,我在每个内联函数中的展开运算符之后使用的语法是错误的。
作为一种解决方法,我已经将内联函数分解为它自己的函数,每次状态更改时都会重写整个状态对象,但这是非常耗时和丑陋的。我宁愿像下面这样内联:
const [stateObject, setStateObject] = useState({
top_level_prop: [
{
nestedProp1: "nestVal1",
nestedProp2: "nestVal2"
nestedProp3: "nestVal3",
nestedProp4: [
{
deepNestProp1: "deepNestedVal1",
deepNestProp2: "deepNestedVal2"
}
]
}
]
});
<h3>Top Level Prop</h3>
<span>NestedProp1:</span>
<select
id="nested-prop1-selector"
value={stateObject.top_level_prop[0].nestedProp1}
onChange={e => setStateObject({...stateObject,
top_level_prop[0].nestedProp1: e.target.value})}
>
<option value="nestVal1">nestVal1</option>
<option value="nestVal2">nestVal2</option>
<option value="nestVal3">nestVal3</option>
</select>
<h3>Nested Prop 4</h3>
<span>Deep Nest Prop 1:</span>
<select
id="deep-nested-prop-1-selector"
value={stateObject.top_level_prop[0].nestprop4[0].deepNestProp1}
onChange={e => setStateObject({...stateObject,
top_level_prop[0].nestedProp4[0].deepNestProp1: e.target.value})}
>
<option value="deepNestVal1">deepNestVal1</option>
<option value="deepNestVal2">deepNestVal2</option>
<option value="deepNestVal3">deepNestVal3</option>
</select> …
Run Code Online (Sandbox Code Playgroud) 正如标题所说,我需要为 Azure 容器实例中托管的应用程序设置 SSL,但是,我不太确定需要从哪里开始。
我有一个通过 Azure 容器实例托管在地址 的容器化应用程序http://myApp.northamerica.azurecontainer.io
。该地址被位于 的“官方”地址所掩盖http://api.myApp.com
。
有什么理由不能将 SSL 添加到表面域 @ http://api.myApp.com
,重定向到真正的域 @http://myApp.northamerica.azurecontainer.io
吗?或者我是否需要将 SSL 添加到两个域?
此外,如果我需要使用 SSL 保护两个域,我是否需要为每个域获取单独的证书?
Azure 提供 SSL 证书服务,但我只需要知道最佳路线。谢谢。
我已经成功创建了一个在 docker 容器内运行的 docker 镜像。容器成功执行映像(.NET 应用程序),但启动后不久映像崩溃,因为它遇到 Azure 服务错误。原因是 docker 容器正在尝试访问 Azure 服务以获取授权令牌(从密钥保管库获取机密),但无权执行此操作。
我应该注意的是,在使用az login
验证我的凭据后,可以通过 Azure CLI 在容器外部本地运行该应用程序。然后,当通过 Azure CLI 启动应用程序时,“允许”它访问 Azure 服务以获取授权令牌,从而从我的密钥保管库中获取数据。
我想知道是否有办法az login
在 .NET 应用程序映像执行之前在 docker 容器内运行带有凭据的脚本,以便我可以在验证凭据后从 Azure CLI(容器内)启动应用程序。我浏览了文档,但没有找到配置类似内容的方法。
I'm going through some legacy code on a submission form and replacing JQuery w/ vanilla JS.
Right now, I have this function that uses .val() (JQuery) to grab the value for an undefined input:
myFunction: function(){
var subscription = $('input[name="subscription_id"]').val();
// Do something with subscription
}
Run Code Online (Sandbox Code Playgroud)
When I run the code in my browser, I get no issues - the code is meant to work only if a subscription is passed into the input - if it's not there, we …
azure ×2
docker ×2
javascript ×2
containers ×1
dns ×1
dockerfile ×1
jquery ×1
react-hooks ×1
reactjs ×1
setstate ×1
ssl ×1
state ×1