首页 > 解决方案 > NSArray arrayWithObject 的语法在最近的 Sketch 版本中是否发生了变化?

问题描述

我开发了一个插件,其中包含一系列可接受的文件扩展名。直到最近版本的 Sketch,语法看起来像:

var fileTypes = [NSArray arrayWithObjects:@'scss',@'less',@'css',nil];

抛出错误,说明:ObjC 方法 arrayWithObjects:需要 1 个参数,但 JavaScript 传递了 4 个参数

我研究了NSArray arrayWithObjects语法并尝试根据文档更新我的代码:

NSString *strings[3];
strings[0] = @'scss';
strings[1] = @'less';
strings[2] = @'css';
NSArray *fileTypes = [NSArray arrayWithObjects:strings count:3];

无论我如何尝试更新语法,它都会引发不同的错误:

SyntaxError:运算符“=”的左侧必须是参考。

不熟悉 ObjC 编程,任何人都可以帮助使用正确的语法来保存等于三个字符串值的参考文件类型吗?

标签: sketchappsketch-3sketchapp-plugin

解决方案


我假设你的意思是在 Sketch 插件或脚本中......只需使用这个:

var fileTypes = NSArray.arrayWithArray(['scss', 'less', 'css']);

推荐阅读