diff --git "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/config.json" "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/config.json"
index 1736ef1d6a76ae4aa1528f808c5400192982fefe..011f07fd784812b61a5c51d4cc7701282c8d8e42 100644
--- "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/config.json"
+++ "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/config.json"
@@ -1,8 +1,15 @@
{
"node_id": "vue-d26464a7a4df460d91c815052c942097",
- "keywords": [],
+ "keywords": [
+ "服务端渲染",
+ "SSR"
+ ],
"children": [],
- "export": [],
- "keywords_must": [],
+ "export": [
+ "exercises.json"
+ ],
+ "keywords_must": [
+ "SSR"
+ ],
"keywords_forbid": []
}
\ No newline at end of file
diff --git "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.json" "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.json"
new file mode 100644
index 0000000000000000000000000000000000000000..a55a353b5237b90d852ed77c3c3aebb3993f7f4e
--- /dev/null
+++ "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.json"
@@ -0,0 +1,7 @@
+{
+ "type": "code_options",
+ "author": null,
+ "source": "exercises.md",
+ "notebook_enable": false,
+ "exercise_id": "1524d1a17fef4b82a529fa92e6bb2306"
+}
\ No newline at end of file
diff --git "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.md" "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.md"
new file mode 100644
index 0000000000000000000000000000000000000000..f2d40ef5933625d1eeb6cd0b64e346ad24a6b17a
--- /dev/null
+++ "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/1.SSR/exercises.md"
@@ -0,0 +1,121 @@
+# SSR
+
+
小常识:
+
+
+什么是SSR?
+
+
+
+
+Vue.js 是一个用于构建客户端应用程序的框架。默认情况下,Vue 组件在浏览器中生成和操作 DOM 作为输出。但是,也可以在服务器上将相同的组件渲染为 HTML 字符串,直接将它们发送到浏览器,最后将静态标记“水合”成客户端上的完全交互式应用程序。
+
+服务器渲染的 Vue.js 应用程序也可以被认为是“同构的”或“通用的”,因为您的应用程序的大部分代码都在服务器和客户端上运行。
+
+
+目前我们的vue组件都是在浏览器侧通过js渲染出来的,所以首次加载时间很慢,那么我们把vue组件交给服务端负责渲染,渲染为完整内容之后直接返给客户端,是不是就可以可以解决既想渲染快,还想继续使用vue进行开发的问题了?
+
+
+
+为什么选择 SSR?
+
+与客户端单页应用程序(SPA)相比,SSR 的优势主要在于:
+
+更快的内容生成时间:这在慢速互联网或慢速设备上更为突出。服务器渲染的标记不需要等到所有 JavaScript 下载并执行后才显示,因此您的用户将更快地看到完全渲染的页面。此外,初次访问的数据获取是在服务器端完成的,它与您的数据库的连接可能比客户端更快。这通常会导致改进的Core Web Vitals指标、更好的用户体验,并且对于内容时间与转化率直接相关的应用程序至关重要。
+
+统一的思维模型:您可以使用相同的语言和相同的声明式、面向组件的思维模型来开发整个应用程序,而不是在后端模板系统和前端框架之间来回切换。
+
+更好的 SEO:搜索引擎爬虫将直接看到完全呈现的页面。
+
+
+
+[vue ssr基础使用](https://ssr.vuejs.org/zh/guide/#%E5%AE%89%E8%A3%85)
+
+新建vue-ssr文件夹
+
+```
+vue-ssr
+```
+
把server文件夹中的文件拷贝进来
+
+
安装必要依赖
+
+```bash
+npm install vue vue-server-renderer --save
+```
+
+
vue服务端渲染最小demo
+
+`app.js`
+
+
+```js
+const Vue = require('vue')
+const server = require('express')()
+
+const renderer = require('vue-server-renderer').createRenderer()
+
+server.get('*', (req, res) => {
+ const app = new Vue({
+ data: {
+ url: req.url
+ },
+ template: `访问的 URL 是:{{ url }}
`,
+ })
+ renderer.renderToString(app, (err, html) => {
+ if (err) throw err
+ res.send(html)
+ })
+})
+
+server.listen(8888,() => console.log(`Example app listening on port 8888!`))
+```
+
+
+浏览器访问
+
+`http://localhost:8888`
+
+
+![在这里插入图片描述](https://img-blog.csdnimg.cn/6df5acdf1be443e38ac1ef7a24e92ddd.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yeg5L2V5b-D5YeJ,size_20,color_FFFFFF,t_70,g_se,x_16)
+
+
+
查看源代码
+
+
+![在这里插入图片描述](https://img-blog.csdnimg.cn/59c8621bee034e2980cddc71ccee5cfc.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Yeg5L2V5b-D5YeJ,size_20,color_FFFFFF,t_70,g_se,x_16)
+
+
+
+
+
+结论:我们通过在服务器端渲染vue组件的方式,让网页中又有了完整的内容,这样我们就可以既使用了vue开发又节省了首次渲染时间
+
+
+
+
+
+
+
+
+ 小测试:
+
+下面对于服务端渲染和客户端渲染描述不正确的是?
+
+## 答案
+
+服务端渲染的用户体验一定优于客户端渲染
+
+## 选项
+
+### A
+
+通过vue-cli,create-react-app 等工具创建的项目是服务端渲染的
+
+### B
+
+服务端渲染对SEO更加友好,而且首屏渲染通常更快一些
+
+### C
+
+SPA是客户端渲染的
\ No newline at end of file
diff --git "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/2.Nuxt.js/config.json" "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/2.Nuxt.js/config.json"
index ec60f6ba37c863d13d91c40512549e968628acd3..536abd52d07cfc70ffb0cd041a684d0ab1561f2b 100644
--- "a/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/2.Nuxt.js/config.json"
+++ "b/data/3.Vue\351\253\230\351\230\266/1.Vue\346\234\215\345\212\241\347\253\257\346\270\262\346\237\223/2.Nuxt.js/config.json"
@@ -2,7 +2,9 @@
"node_id": "vue-9955251e862745919db545791d1b8d44",
"keywords": [],
"children": [],
- "export": [],
+ "export": [
+ "exercises.json"
+ ],
"keywords_must": [],
"keywords_forbid": []
}
\ No newline at end of file
diff --git a/data/tree.json b/data/tree.json
index 7a3959a4123d4ec767322ff2a2dba0fcc5f23691..8f3a022c5c886c609bdc5feb2466af4bb16c099e 100644
--- a/data/tree.json
+++ b/data/tree.json
@@ -28,8 +28,7 @@
"简介"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -48,8 +47,7 @@
"响应式"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -67,8 +65,7 @@
"优点"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -86,14 +83,12 @@
"query"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -119,8 +114,7 @@
"配置"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -136,8 +130,7 @@
"命令"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -153,14 +146,12 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -181,8 +172,7 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -203,8 +193,7 @@
"初始化"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -221,8 +210,7 @@
"生命周期"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -238,8 +226,7 @@
"指令"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -256,8 +243,7 @@
"计算属性"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -274,14 +260,12 @@
"侦听器"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -302,8 +286,7 @@
"插值表达式"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -320,8 +303,7 @@
"过滤器"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -340,8 +322,7 @@
"绑定"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -360,14 +341,12 @@
"修饰符"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -387,8 +366,7 @@
"keywords_must": [
"V-model"
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -405,20 +383,17 @@
"修饰符"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -446,8 +421,7 @@
"组件"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -466,8 +440,7 @@
],
"keywords_forbid": [
"非父子"
- ],
- "group": 0
+ ]
}
},
{
@@ -485,8 +458,7 @@
"通信"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -507,8 +479,7 @@
"插槽"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -529,14 +500,12 @@
"异步组件"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -558,8 +527,7 @@
"介绍"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -578,8 +546,7 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -596,8 +563,7 @@
"导航"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -613,8 +579,7 @@
"动态路由"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -631,8 +596,7 @@
"传参"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -656,8 +620,7 @@
"别名"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -673,8 +636,7 @@
"路由模式"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -693,8 +655,7 @@
],
"keywords_forbid": [
"后置"
- ],
- "group": 0
+ ]
}
},
{
@@ -711,14 +672,12 @@
],
"keywords_forbid": [
"前置"
- ],
- "group": 0
+ ]
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -740,8 +699,7 @@
"介绍"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -762,8 +720,7 @@
"配置"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -780,8 +737,7 @@
"核心"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -798,18 +754,16 @@
"api"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
- "Vue-cli": {
+ "vue-cli": {
"node_id": "vue-b5059c2749d74633ad30145ec28cc22e",
"keywords": [],
"children": [
@@ -827,8 +781,7 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -846,8 +799,7 @@
"项目"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -863,8 +815,7 @@
"命令"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -881,8 +832,7 @@
"配置"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -896,14 +846,12 @@
"keywords_must": [
"ESLint"
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -932,8 +880,7 @@
"使用"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -953,8 +900,7 @@
"配置"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -980,8 +926,7 @@
"请求"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1001,14 +946,12 @@
"跨域"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1031,8 +974,7 @@
"模块化"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1049,8 +991,7 @@
"介绍"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1066,8 +1007,7 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1084,8 +1024,7 @@
"使用"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1102,14 +1041,12 @@
"配置"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1131,8 +1068,7 @@
"介绍"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1148,8 +1084,7 @@
"语法"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1166,8 +1101,7 @@
"占位符"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1185,14 +1119,12 @@
"安装"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1216,8 +1148,7 @@
"自定义指令"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1237,8 +1168,7 @@
"钩子函数"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1255,14 +1185,12 @@
"参数"
]
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1271,14 +1199,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1297,8 +1223,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1307,14 +1232,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1328,8 +1251,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1338,14 +1260,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1359,8 +1279,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1369,8 +1288,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1379,8 +1297,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1389,14 +1306,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1410,8 +1325,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1420,8 +1334,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1430,8 +1343,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1440,14 +1352,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1461,8 +1371,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1471,8 +1380,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1481,8 +1389,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1491,14 +1398,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1512,8 +1417,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1522,8 +1426,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1532,14 +1435,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1553,8 +1454,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1563,8 +1463,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1573,8 +1472,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1583,8 +1481,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1593,14 +1490,12 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1614,8 +1509,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1626,8 +1520,7 @@
"keywords_must": [
"Object.defineProperty"
],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1636,8 +1529,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1646,8 +1538,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1656,8 +1547,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1666,8 +1556,7 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
},
{
@@ -1676,25 +1565,21 @@
"keywords": [],
"children": [],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
],
"keywords_must": [],
- "keywords_forbid": [],
- "group": 0
+ "keywords_forbid": []
}
}
\ No newline at end of file