Javascript 我试图在Figma中找到页面的页面id,并将其映射到Google幻灯片中的对象id
问题:我从Figma API获得了Javascript 我试图在Figma中找到页面的页面id,并将其映射到Google幻灯片中的对象id,javascript,json,multidimensional-array,google-apps-script,figma-api,Javascript,Json,Multidimensional Array,Google Apps Script,Figma Api,问题:我从Figma API获得了args.JSON,我试图从子数组中仅提取字符串“id”。我正在使用google应用程序脚本和Figma API创建一个插件。我希望Figma中的所有页面及其各自的id都出现在google应用程序脚本的幻灯片中 参考资料:我是如何得到这份工作的 Figma页面转换: var children=args={ “文件”:{ “儿童”:[{ “id”:“0:1”, “名称”:“布局”, “类型”:“画布”, }]}} var page=args.document
args.JSON
,我试图从子数组中仅提取字符串“id”。我正在使用google应用程序脚本和Figma API创建一个插件。我希望Figma中的所有页面及其各自的id都出现在google应用程序脚本的幻灯片中
参考资料:我是如何得到这份工作的
Figma页面转换:
var children=args={
“文件”:{
“儿童”:[{
“id”:“0:1”,
“名称”:“布局”,
“类型”:“画布”,
}]}}
var page=args.document.children;
JSON.page=[];
用于(第页中的变量i){
JSON.pages.unshift([1]);
};
var pageId=args.page.id;
idJSON.page.id=[];
用于(id中的变量i){
idJSON.id,push(第[i]页(“id”))
};
谷歌应用程序脚本幻灯片创建:
函数createSlide(presentationId){
//您可以指定幻灯片使用的ID,只要它是唯一的。
var pageid=page.stringify(id[0])
var请求=[{
“创建幻灯片”:{
“objectId”:{
“插入索引”:{
“slideLayoutReference”:{
“预定义布局”:“标题和两列”
}
}
}
}
}];
var slide=Slides.Presentations.batchUpdate({'requests':requests},presentationId());
Logger.log('Created Slide,ID:'+Slide.repress[0].createSlide.objectId);
}
我尝试使用shift方法仅获取id,但它出现了一个错误,我不确定使用哪种方法
我尝试使用idJSON.id,filter((“id”)
从页面中筛选出所有id,但它运行了,但在我的JSON.pages.unshift([1])上导致ab错误代码>并且我仍然无法将pageID
传递到我的var=slide
中
我还试着在and函数中运行变量PageID
,它也运行得很好,但是我仍然无法将PageID
传递到我的var=slide
中。
id,过滤器(函数(pageId){})
错误(在Google应用程序脚本中):
TypeError:无法调用未定义的方法“unshift”。
at功能N3(文件名:53)
因此,您希望将var2转换为变量以从var1捕获ID。从var1的数组中取消移位字符串。然后,您需要将concate
与var 2和var 3一起使用,为您的幻灯片提供一个id
这是密码
function strings() {
var var2 = {};
var var1 = args.document.children;
pageJSON.page = [];
for (var i in page) {
pageJSON.page.push(page[1].id);
}
function createPresentation(NewSlides, Slide) {
var NewSlides = pageJSON.concat(Slide);
var presentation = Slides.Presentations.create({
title: "MyNewPresentation"
});
Logger.log("Created presentation with ID: " + presentation.s);
function createSlide(presentationId, NewSlides) {
// You can specify the ID to use for the slide, as long as it's unique.
var pageid = page.stringify(id[0]);
var requests = [
{
createSlide: {
objectId: {
insertionIndex: {
slideLayoutReference: {
predefinedLayout: "TITLE_AND_TWO_COLUMNS"
}
}
}
}
}
];
var var3 = Slides.Presentations.batchUpdate(
{ requests: requests },
presentationId(NewSlides)
);
Logger.log(
"Created Slide with ID: " + slide.replies[0].createSlide.objectId
);
}
}
}