小编Sam*_*ura的帖子

.NET 如何解析同一包的不同版本?

这个问题涉及 .NET 5+,而不是 .NET Framework。

考虑以下依赖树:

  • MyWebsiteRandomWebLibrary有对1.0.0 和2.0.0的包引用RandomJsonLibrary
  • NuGet 包RandomWebLibrary1.0.0 具有对 1.0.0 的包引用RandomJsonLibrary
  • NuGet 包RandomJsonLibrary没有依赖项。

我的问题:

  1. RandomJsonLibrary运行时将加载什么版本?
  2. RandomJsonLibrary如果2.0.0 的 API 与RandomJsonLibrary1.0.0完全不同会发生什么?
  3. 作者可以采取任何措施来解决因依赖关系树中MyWebsite存在多个版本而引起的问题吗?RandomJsonLibrary.NET 5+ 中是否存在与 .NET Framework 绑定重定向等效的功能?

我是出于好奇才问的,而不是因为我遇到了问题。作为参考,这里是关于Understanding AssemblyLoadContext 的文档,它似乎相关,但没有回答我的问题。

assembly-resolution nuget .net-5

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

停止Python程序,直到用户执行操作

我使用的原始程序input,如下所示:

n = input("Enter your favorite number: ")
# do stuff with number
Run Code Online (Sandbox Code Playgroud)

现在,我已经切换到GTK GUI,但仍希望完成同样的事情.现在看看这段非常相似的代码:

n = myWindow.getNumber()
# do stuff with number
Run Code Online (Sandbox Code Playgroud)

是否可以编写一个getNumber()只在用户按下窗口中的提交按钮后返回的方法?(就像input函数的工作方式一样)或者这是我唯一的选择:

def callback(widget, event):
    n = myWindow.inputWidget.getValue()
    # do stuff with number

n = myWindow.getNumber(callback)
Run Code Online (Sandbox Code Playgroud)

更新:我希望在没有gtk.Dialog的情况下执行此操作,因为我不希望每次需要用户输入时都会弹出一个对话框.

python gtk

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

使用 Yarn 工作区/nohoist 时,如何控制 Yarn 为依赖项的 peerDependency 选择哪个版本?

我有一个 Yarn 工作区,其中包含两个包watermelon-webwatermelon-native,它们使用最新版本react-redux但不同版本的react. 问题是我无法控制为 的peerDependency 选择哪个版本reactYarn 。react-redux

工作空间package.json

{
    "private": true,
    "workspaces": {
        "packages": [
            "watermelon-web",
            "watermelon-native"
        ],
        "nohoist": [            
            "**/watermelon-native/react-redux"
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

(需要 nohoist 来防止运行时错误)

watermelon-web/package.json:

{
  "name": "watermelon-web",
  "dependencies": {
    "react": "^16.12.0",
    "react-redux": "^7.1.3"
  }
}
Run Code Online (Sandbox Code Playgroud)

watermelon-native/package.json:

{
  "name": "watermelon-native",
  "dependencies": {
    "react": "16.8.3",
    "react-redux": "^7.1.3"
  }
}
Run Code Online (Sandbox Code Playgroud)

同时,react-redux有一个peerDependency "react": "^16.8.3"

我想要发生的事情:安装 Yarn 后,watermelon-native/node_modules/react-redux/node_modules不包含react …

react-native yarnpkg yarn-workspaces

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

如何防止我记忆的 React 组件在 React DevTools 中显示为“匿名”?

React.memo当定义一个 React 组件时

const MyComponent = React.memo((props) => <div>...</div>);
Run Code Online (Sandbox Code Playgroud)

React DevTools 在组件树中将组件标记为“Anonymous”。如果应用程序包含多个记忆组件,这可能会使调试变得混乱。

如何让我记忆的组件名称显示在 React DevTools 中?

reactjs

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