我有以下代码:
try {
phpDoc(vscode.window.activeTextEditor);
} catch (err) {
console.error(err);
vscode.window.showErrorMessage(err.message);
}
Run Code Online (Sandbox Code Playgroud)
但是在 上err.message出现错误,但我无法在 中键入对象。Object is of type 'unknown'.ts(2571)err.catch (err: Error)
我应该怎么办?
当我使用 UIHostingController 将新的 SwiftUI.View 推送到现有 UIKit UIViewController 的导航堆栈时,导航栏中标题的动画被破坏。我在 Xcode 12.0 中在一个全新的项目上进行了测试。
仔细观察标题“UIHostingController”。您可以看到该动画与普通的推送动画有何不同,它只是凭空“出现”,看起来很破碎。第二个动画已经从 SwiftUI.NavigationLink 中发生,看起来不错。
如果您想尝试一下,这里是示例项目的链接: https://www.dropbox.com/s/mjkuzhpsb6yvlir/HostingControllerTest.zip ?dl=0
请参阅此 GIF 图像:(如果您看不到 GIF 动画,请在另一个浏览器选项卡中打开)
这是背后的代码:
class ViewController: UIViewController {
private let button = UIButton(frame: .zero)
override func viewDidLoad() {
super.viewDidLoad()
self.title = "UIHostingController Title Test"
self.view.backgroundColor = UIColor.white
self.view.addSubview(self.button)
button.translatesAutoresizingMaskIntoConstraints = false
button.setTitle("Push UIHostingController", for: .normal)
button.addTarget(self, action: #selector(Self.pushVC), for: .touchUpInside)
button.setTitleColor(.blue, for: .normal)
NSLayoutConstraint.activate([
button.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
button.centerYAnchor.constraint(equalTo: self.view.centerYAnchor),
button.widthAnchor.constraint(equalTo: self.view.widthAnchor),
button.heightAnchor.constraint(equalToConstant: 50)
])
}
@objc private func pushVC() {
let vc …Run Code Online (Sandbox Code Playgroud) 我希望视图立即出现。而不是默认的 iOS 推送动画。
此方法用于NavigationView与+一起使用NavigationLink。iOS 16 已弃用NavigationView
enum Nav {
case a
}
struct ContentView: View {
@State var nav: [Nav] = []
var body: some View {
NavigationStack(path: $nav) {
Button {
var transaction = Transaction()
transaction.disablesAnimations = true
withTransaction(transaction) {
nav = [.a] // Doesn't work. Still animates
}
} label: {
Text("Go to a")
}
.navigationDestination(for: Nav.self) { path in
switch path {
case .a:
Text("a")
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 我尝试了几种方法,但未能找到如何将数字添加到NS集.这都是在lambda函数中运行的.
我正在创建一个dynamodb表,其中十六进制中的不同颜色与一组id对齐.我正在优化表以进行快速读取并避免重复,这就是为什么我想为每个十六进制维护一组id.
我是如何向表中添加项目的:
let doc = require('dynamodb-doc');
let dynamo = new doc.DynamoDB();
var object = {
'TableName': 'Hex',
'Item': {
'hex': '#FEFEFE',
'ids': {
'NS': [2,3,4]
}
}
}
dynamo.putItem(object, callback);
Run Code Online (Sandbox Code Playgroud)
使用Dynamodb更新项目文档标准
var params = {
"TableName" : "Hex",
"Key": {
"hex": "#FEFEFE"
},
"UpdateExpression" : "ADD #oldIds :newIds",
"ExpressionAttributeNames" : {
"#oldIds" : "ids"
},
"ExpressionAttributeValues": {
":newIds" : {"NS": ["5", "6"]}
},
};
dynamo.updateItem(params, callback);
Run Code Online (Sandbox Code Playgroud)
这会返回以下错误,因此dynamo认为:newIds是一个地图类型而不是一个集合(?)
"errorMessage": "Invalid UpdateExpression: Incorrect operand type …Run Code Online (Sandbox Code Playgroud) javascript set amazon-web-services amazon-dynamodb aws-lambda
我的应用程序目前面临 pb 问题。我想对由 SwiftUI TabView 控制的项目的插入和删除进行动画处理。
这是重现问题的简单视图
struct ContentView: View {
@State private var selection: Int = 1
var body: some View {
TabView(selection: $selection.animation(),
content: {
Text("Tab Content 1")
.transition(.slide) //could be anything this is for example
.tabItem { Text("tab1") }.tag(1)
.onAppear() {print("testApp")}
.onDisappear(){print("testDis")}
Text("Tab Content 2")
.transition(.slide)
.tabItem { Text("tab2") }.tag(2)
})
}
}
Run Code Online (Sandbox Code Playgroud)
当点击 tabItem 时,它会立即从“选项卡内容 1”切换到“选项卡内容 2”,我想为其设置动画(而不是选项卡项按钮实际的选项卡内容)。和被按预期调用onAppear,onDisapear因此所有转换都应该被触发。
如果有人有想法开始合作,我会很高兴
谢谢
swiftui ×3
swift ×2
aws-lambda ×1
ios ×1
ios14 ×1
javascript ×1
navigation ×1
set ×1
try-catch ×1
typescript ×1
xcode ×1