在Cargo.toml中使用cfg(not(...))
声明依赖关系是否有效?
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
websocket = "0.23.0"
[target.'cfg(target_arch = "wasm32")'.dependencies.web-sys]
version = "0.3.22"
features = [
"ErrorEvent",
"MessageEvent",
"WebSocket",
]
我收到以下代码的错误can't find crate "websocket"
:
macro_rules! if_not_wasm {
($($i:item)*) => ($(
#[cfg(not(target_arch = "wasm"))] $i
)*)
}
macro_rules! if_wasm {
($($i:item)*) => ($(
#[cfg(target_arch = "wasm")] $i
)*)
}
if_not_wasm! {
extern crate websocket;
}
if_wasm! {
extern crate web_sys;
}
if_wasm!
中的导入按预期工作,但出现if_not_wasm!
错误。我正在使用以下.cargo/config
运行此程序:
[build]
target = "wasm32-unknown-unknown"
答案 0 :(得分:1)
在您的宏规则条件下,您似乎只需要wasm32
,而不是wasm
。