Visual studio code 在VSCode中展开单个方法
VS代码中是否有允许我们展开单个方法并折叠其他方法的键盘快捷键 我能够折叠和展开所有的方法,但无法找到一种方法来展开一个单一的方法 如果能够做到这一点,它将允许我专注于单个方法,而不是被那些长长的代码行分散注意力 例如下面。。。展开getTitle方法并折叠其他操作Visual studio code 在VSCode中展开单个方法,visual-studio-code,Visual Studio Code,VS代码中是否有允许我们展开单个方法并折叠其他方法的键盘快捷键 我能够折叠和展开所有的方法,但无法找到一种方法来展开一个单一的方法 如果能够做到这一点,它将允许我专注于单个方法,而不是被那些长长的代码行分散注意力 例如下面。。。展开getTitle方法并折叠其他操作 import Web3 from "web3"; import Play from "../abis/Play.json"; export const WEB3_LOADED = &quo
import Web3 from "web3";
import Play from "../abis/Play.json";
export const WEB3_LOADED = "WEB3_LOADED";
export const WEB3_ACCOUNT_LOADED = "WEB3_ACCOUNT_LOADED";
export const TOKEN_LOADED = "TOKEN_LOADED";
export const PLAY_LOADED = "PLAY_LOADED";
export const GET_NAME = "GET_NAME";
export const SET_NAME = "SET_NAME";
export const CHANGE_TEST = "CHANGE_TEST";
export const LOAD_ALL_DATA = "LOAD_ALL_DATA";
export const TRANSFER_LOADING = "TRANSFER_LOADING";
export const TRANSFER_LOADED = "TRANSFER_LOADED";
export const loadWeb3 = (eth) => {
const web3 = new Web3(eth);
return async (dispatch) => {
dispatch({
type: WEB3_LOADED,
connection: web3,
});
return web3;
};
};
export const loadAccount = (web3) => {
return async (dispatch) => {
const accounts = await web3.eth.getAccounts();
const account = accounts[0];
dispatch({
type: WEB3_ACCOUNT_LOADED,
account,
});
};
};
export const loadPlay = (web3, networkId) => {
return async (dispatch) => {
try {
const play = new web3.eth.Contract(
Play.abi,
Play.networks[networkId].address
);
dispatch({
type: PLAY_LOADED,
play,
});
return play;
} catch (error) {
console.log("Play Contract Not Deployed");
return null;
}
};
};
export const getName = () => {
return async (dispatch, getState) => {
const name = await getState().play.play.methods.name().call();
dispatch({
type: GET_NAME,
name,
});
};
};
export const setName = (name) => {
return async (dispatch, getState) => {
try {
const { account } = getState().web3;
const { play } = getState().play;
play.methods
.setName(name)
.send({
from: account,
})
.on("transactionHash", (hash) => {
dispatch({
type: SET_NAME,
name,
});
})
.on("error", (error) => {
console.error(error);
window.alert("There was an error setting Name");
});
} catch (error) {
window.alert("Failed to Set Name");
}
};
};
export const loadAllData = () => {
return async (dispatch, getState) => {
const { play } = getState().play;
const transferStream = await play.getPastEvents("Transfer", {
fromBlock: 0,
toBlock: "latest",
});
const allTransferred = transferStream.map((event) => event.returnValues);
dispatch({
type: LOAD_ALL_DATA,
allTransferred,
});
};
};
export const subscribeToEvents = () => {
return async (dispatch, getState) => {
const { play } = getState().play;
play.events.Transfer({}, (error, event) => {
dispatch({
type: TRANSFER_LOADED,
payload: event.returnValues,
});
});
};
};
export const transfer = (amount) => {
return async (dispatch, getState) => {
const { account } = getState().web3;
const { play } = getState().play;
await play.methods
.transfer(amount)
.send({
from: account,
})
.on("transactionHash", () => {
dispatch({
type: TRANSFER_LOADING,
});
})
.on("error", (error) => {
console.error(error);
window.alert("There was an error Transferring");
});
};
};
export const getTitle = () => {
return async (dispatch, getState) => {
const title = await getState().play.play.methods.title().call();
console.log(title);
};
};
export const testDemo = () => {
return async (dispatch, getState) => {
console.log(dispatch, getState());
};
};
export const changeTest = () => {
return {
type: CHANGE_TEST,
name: "ali",
};
};
Ctrl+Shift+[折叠一个区域,而Ctrl+Shift+]将展开一个区域,如中所述:
您还需要确保光标位于正确的位置
如果要递归折叠/展开,可以使用Ctrl+K、Ctrl+[进行折叠,以及Ctrl+K、Ctrl+]进行展开。这将折叠/展开一个区域内的所有区域(即
getTitle()
函数,其return
函数将分别折叠/展开)。我在Mac上使用Cmd+K+0,它将折叠我的所有方法。我可以使用Cmd+K+J来展开我的所有方法。我尝试了Cmd+Option+]但是,它只展现了该方法的一部分。我需要向下滚动到每一行,然后单击Cmd+Option+]以完全展开该方法。例如,根据您的示例,我需要将光标放在getTitle上,然后返回async,两次都单击Cmd+Option+]以展开命令行codes@HendryLim看看,我不知道顺序是否重要,但PDF声明:⌥ + ⌘ + [
折叠和⌥ + ⌘ + ]代码>展开。根据您的评论,您正在执行⌘ + ⌥ + ]代码>/[
分别。我想知道这是否会让它过时。除此之外,我不确定它可能是什么。感谢分享:)我希望能够折叠所有方法,然后展开我想要关注的特定方法。我怀疑这是与folding@HendryLim,我想我明白你在说什么了。我不确定我是否明白如果存在这样一个功能-我认为不幸的是,它不会出现,但我会在有时间的时候进一步研究它。@HendryLim TryCrtrl
+K
,Ctrl
+[
/]
(或mac的等效功能-我在电脑上,所以我不确定键是什么!)。我想这就是你想要的。。如果我折叠所有函数,然后导航到我想要展开的函数,这将展开整个函数。因此,对于你的getTitle()
函数,它将展开函数,再加上return
函数。如果这是你想要的,我将编辑我的帖子以包含此信息。