JS中的“Class <component>”意思

时间:2016-08-25 04:33:36

标签: javascript ecmascript-6 vue.js

抱歉这个糟糕的标题(我无法想出更好的标题)。

我正在查看-6, 0, -4, -29, -10, 0, -16 2, 3, 0, 18, -1, -2 21, 10, -10, 0, -12, 0 deltacount = [0, -7, 0, 0, -8, 0, 0, -4, 0, 0, 0, **-6, 0, -4, -29, -10, 0, -16**, 0, 0, **2, 3, 0, 18, -1, -2**, 0, 0, 0, 0, 0, 0, **21, 10, -10, 0, -12, 0**] 代码,我发现了这个:

Vue

export function initMixin (Vue: Class<Component>) { // ... } 在这种情况下的含义是什么?和结肠?在这种情况下,我们将变量Class<Component>传递给Vue函数。 Vue它只是一个工厂类声明。我一直沉浸在ES2015中,但我仍然不明白它的作用。

文件为https://github.com/vuejs/vue/blob/next/src/core/instance/init.js,第12行。

谢谢!

1 个答案:

答案 0 :(得分:2)

Vue正在使用flow,这是Javascript的类型扩展。

您可以通过阅读.babelrc文件找到确切的Javascript变体。您可以看到它使用了两个预设:Vue: Class<Component>flow-vue

在这种情况下,Vue声明参数Class<Component>,其类型为 HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.MULTIPART_FORM_DATA); MultiValueMap<String, Object> bodyMap = new LinkedMultiValueMap<>(); //Json Payload as String bodyMap.add("payload", payload); for (File file : fileArray) { bodyMap.add("file", new FileSystemResource(file)); } HttpEntity<MultiValueMap<String, ?>> entity = new HttpEntity<MultiValueMap<String, ?>>(bodyMap, headers);