# XION答案

By [小麻不算麻](https://paragraph.com/@0x184900a9e37fbafd2e07a386ae348ca4a853546b-2) · 2025-08-13

---

生态概览 - XION 基础
==============

B

A

C

AC

B

A

B

ABCD

AC

[**链抽象**](https://www.hackquest.io/zh-cn/courses/120e7446-5ed5-8150-81e7-e75d5be141aa)

ACD

ACD

BCD

ABD

A

B

[**账户抽象**](https://www.hackquest.io/zh-cn/courses/11fe7446-5ed5-818a-89a3-e9c67da99593)

AbstraxionProvider

const \[showAbstraxion, setShowAbstraxion\] = useModal();

setShowAbstraxion(true);

const \[isOpen, setIsOpen\] = useState(false);

const now = new Date();

setExecuteResult(claimRes);

**Quiz 1**

b

c

acd

bcd

b

AC

b

a

a

CosmWasm 开发入门
=============

B

B

B

B

C

C

B

B

A

D

**Quiz 1**

B

B

B

D

B

C

实用工具 - xion.js
==============

C

D

A

B

A

B

B

C

**Quiz 1**

1B

2C

3C

在 XION 上建设你的项目
==============

B

B

B

#\[cfg(not(feature = "library"))\]

use cosmwasm\_std::entry\_point;

Uint128, Uint64

use cw2::set\_contract\_version;

use cw20::{Cw20Contract, Cw20ExecuteMsg, Cw20ReceiveMsg};

pub fn instantiate( deps: DepsMut, \_env: Env, info: MessageInfo, msg: InstantiateMsg ) -> Result<Response, ContractError> {}

#\[cfg\_attr(not(feature = "library"), entry\_point)\]

set\_contract\_version(deps.storage, CONTRACT\_NAME, CONTRACT\_VERSION)?;

以下答案一题俩个

let owner = msg.admin

.unwrap\_or(info.sender);

以上答案一题俩个

let config = Config {};

owner: owner.clone(),

CONFIG.save(deps.storage, &config)?;

POT\_SEQ.save(deps.storage, &0u64);

.add\_attribute("owner", owner)

.add\_attribute("cw20\_addr", msg.cw20\_addr)

pub fn execute( deps: DepsMut, \_env: Env, info: MessageInfo, msg: ExecuteMsg ) -> Result<Response, ContractError> {}

#\[cfg\_attr(not(feature = "library"), entry\_point)\]

match msg {}

ExecuteMsg::Receive(msg) => execute\_receive(deps, info, msg)

pub fn execute\_create\_pot( deps: DepsMut, info: MessageInfo, target\_addr: String, threshold: Uint128 ) -> Result<Response, ContractError> {}

let config = CONFIG.load(deps.storage);

if config.owner != info.sender {}

return Err(ContractError::Unauthorized {});

let pot = Pot {};

collected: Uint128::zero()

save\_pot(deps, &pot);

.add\_attribute("target\_addr", target\_addr)

let config = CONFIG.load(deps.storage);

let msg: ReceiveMsg = from\_json(&wrapped.msg);

receive\_send(deps, id, wrapped.amount, info.sender)

pot\_id: Uint64,

cw20\_addr: Addr

let mut pot = POTS.load(deps.storage, pot\_id.u64());

pot.collected += amount;

if pot.collected >= pot.threshold {}

let cw20 = Cw20Contract(cw20\_addr);

let msg = cw20.call

res = res.add\_message(msg);

to\_json\_binary(&query\_pot(deps, id))

[**利用 Treasury Contracts 创建无 Gas 体验**](https://www.hackquest.io/zh-cn/courses/128e7446-5ed5-816d-bda3-f079abcd789c)

**C**

挑战项目 - PWA
==========

D

D

D

B

D

C

[**在 XION 上开发 PWA 应用程序**](https://www.hackquest.io/zh-cn/courses/11be7446-5ed5-816f-add4-f6ba31443495)

const \[isOpen, setIsOpen\] = useState(false);

**Quiz 1**

D

D

D

---

*Originally published on [小麻不算麻](https://paragraph.com/@0x184900a9e37fbafd2e07a386ae348ca4a853546b-2/xion)*
