报错提示name 'content_json'not defined?

然后json我去检验过了没问题,所以实在不懂哪里有错,有没有大神指点一下,万分感谢

}

tips:学识有限,难免错漏,仅供参考。



不过,问题来了。由于我们的应用是一个单页的客户端应用,如果没有适当的服务器配置, 用户在浏览器中直接访问 mit("setPayResult", JSON.parse(payResult));

key 的特殊 attribute 主要作用在于给节点做唯一标识,以便高效的更新虚拟 DOM。 在新旧 nodes 对比时辨识 VNodes。如果不使用 key,Vue 会使用一种最大限度减少动态元素并且尽可能的尝试就地修改/复用相同类型元素的算法。 而使用 key 时,它会基于 key 的变化重新排列元素顺序,并且会移除 key 不存在的元素。

有相同父元素的子元素必须有独特的 key。重复的 key 会造成渲染错误。

父子组件中几个钩子的执行顺序。父组件是子组件的容器,从这角度理解,那么应当是父组件先创建,然后才能容纳子组件创建。 而挂载渲染,子组件作为父组件一部分,父组件的挂载渲染完成,应当以子组件为前提。(特例除外)

'' 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 '' 相似,'' 是一个抽象组件: 它自身不会渲染一个 DOM 元素,也不会出现在组件的父组件链中。

$router 是包括了路由的钩子函数和跳转方法等的路由实例对象,常用于跳转,例如一个携带参数的跳转:

route可用于获取router.push 携带过来的参数,是路由信息对象,包括 name,query,params 等路由信息。例如下面这样使用:

63. css 怎样穿透样式?穿透符能穿透修改 vue #app 节点外元素的样式吗?

对于 vue 中 div#app 节点外的元素样式,如果 '' 加上了 scoped,那么此时样式穿透符是不能穿透修改 div#app 节点外的元素样式的。 这是因为 scoped 的作用域仅局限在 div#app 容器内部,所以此时只能修改 div#app 容器内的样式。 例如 el 组件的下拉选的弹出层是 div#app 的兄弟元素,body的子元素,在 '' 中使用样式穿透符修改该弹出层的样式是无效的。

全局后置守卫钩子先执行,组件内的 beforeRouteEnter 钩子后执行。

6.解析异步路由组件。 12.调用 beforeRouteEnter 守卫中传给 next 的回调函数,创建好的组件实例会作为回调函数的参数传入。

65. 清除浮动的方式

①使用clear属性清除浮动。

②创建BFC环境,利用BFC的特性,BFC具有排除外部浮动和包含内部浮动的特性。

66. 典型的可替换元素有哪些?

developer.mozilla 上列明的典型的可替换元素只有下面几个:

而其他元素仅在特定情况下作为可替换元素处理:

HTML 规范也说了 元素可替换,因为 "image" 类型的 元素就像一样被替换。 但是其他形式的控制元素,包括其他类型的 元素,被明确地列为非可替换元素(non-replaced elements)。

所以,如果强调典型的可替换元素,那么 iframe,video,embed,img 更合适作为代表。

67. img 标签是块级元素吗?行内元素和块级元素有哪些?行内元素和块级元素的有什么区别?行内元素的 padding 和 margin 设置会生效吗?

以下是 HTML 中所有的块级元素列表(虽然”块级“在新的 HTML5 元素中没有明确定义):

因为 img 还是可替换元素(replaced element)又称置换元素,所以与 span 不同可设置宽高。

68. js 能改变数组自身的数组方法有哪些?

用法:在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。

应用场景:因为 vue 是异步执行 dom 更新的,所以当你希望在更新数据之后,操作新的视图, 那么你的操作逻辑应写在 Vue.nextTick(callback) 的回调中,而这个回调会在dom 更新循环结束之后执行。 否则,因为异步更新 dom 的原因,如果你不是在 Vue.nextTick(callback) 的回调中执行操作新视图, 那么可能会发生意外。例如你在 created()钩子 是不能操作 dom 的,但你可以在此调接口更新数据, 如果你此时希望接口更新完毕数据后,接着调用操作 dom 的逻辑,那么最后将这部分操作 dom 的逻辑, 放置在Vue.nextTick(callback) 的回调函数中。

  • 反向代理,负载均衡。 有时单台服务器,无法满足大量用户同时访问,需要服务集群以支持,保证应用的可用性。 nginx 做反向代理,可以代理分发,可以使得多台服务器能够平均分担负载。

我用到 nginx 的地方是,一是作为 http 服务器,为我做测试实验,以及一些静态资源提供 http 服务。二通过 nginx 代理实现跨域。 三是利用 nginx 的代理转发,实现同一域名下部署多个项目。

优点: 在 CSS 语法的基础上增加了变量 (variables)、嵌套 (nested rules)、混合 (mixins)、导入 (inline imports) 等高级功能, 这些拓展令 CSS 更加强大与优雅。提高样式的可维护性,一定程度上可以提高工作效率。

缺点:浏览器“不认识” css 预处理语言,需要预处理工具转换才能在浏览器上生效,重新编译的耗时可能略微大于原生 css。

官网:Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 + 库。 它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

  • State。共享的的全局的的属性或状态,主要在 state 中声明存放。

注意从 Vue 3.0 开始,getter 的结果不再像计算属性一样会被缓存起来。

Vuex 中的 mutation 非常类似于事件:每个 mutation 都有一个字符串的事件类型 (type)和一个回调函数 (handler)。 这个回调函数就是我们实际进行状态更改的地方,并且它会接受 state 作为第一个参数

  • Module。当应用变得非常复杂时,store 对象就有可能变得相当臃肿。为了解决以上问题,Vuex 允许我们将 store 分割成模块(module)。 每个模块拥有自己的 state、mutation、action、getter、甚至是嵌套子模块——从上至下进行同样方式的分割。

73. 几个浏览器 css 兼容性写法

CSS非标准属性。厂商在实现非标准的CSS属性时,通常会加上前缀,甚至在将来会实现的标准也加。当标准被发布后,厂商会将前缀移除。

  • 书写建议私有属性(非标准)放在前面,标准属性写在后面

74. js脚本一定会阻塞浏览器渲染文档吗?

浏览器解析器遇到script脚本的解析逻辑:

1.情形一:页面中引入的script脚本会阻塞浏览器解析渲染文档。

浏览器解析文档时,默认是按照排列顺序向下解析的,当遇到script标签时,和其他标签元素一样(例如一个div), 会先解析该元素(脚本),解析完成后再继续向下走完成剩余文档的解析和渲染。也就是说默认情况下,script脚本会阻塞文档的解析渲染。

注意,如果我们的script脚本是放在页面底部的内联脚本,那么它对文档的解析渲染,在结果上影响不大。

但如果script脚本是外部脚本(通过网址引入的那种),那么这个脚本需要下载和解析执行, 这期间会阻塞浏览器对文档的向下解析渲染,直至脚本下载执行完成,才会继续向下解析渲染。如果这个脚本出错了, 可能还会导致整个页面永远无法正常渲染呈现。

注意,DOM树的生成是受JavaScript代码执行影响的,JavaScript代码会“阻塞”页面UI的渲染。

2.情形二:页面中引入的script脚本不会阻塞浏览器解析渲染文档。

情形一中提到的脚本执行的同步和阻塞的情形,是指默认情况下的script脚本加载方式。script标签有两个属性,一个是defer(翻译为延迟), 二是asyn(翻译为异步,没错,和我们的常见的ajax和axios的异步是一个意思), 这两个属性都可以改变脚本的加载执行方式(在浏览器支持的情况下,这两的兼容性,后面会补充)。

延迟:延迟是指当浏览器解析到script脚本时,会继续向下载入和解析文档,等到文档载入解析完成且可以操作文档时,才开始执行脚本。

异步:异步是指当浏览器解析到script脚本时,会立刻下载和执行脚本,但同时浏览器解析器也会继续向下解析渲染文档, 不会造成阻塞的现象。这使得脚本可以尽快的被载入执行,这很想我们前端调用post异步接口,并不影响文档的正常解析渲染。

ps:defer和async属性像是在告诉浏览器,链接进来的脚本不会使用document.write(),也不会生成文档内容, 因此浏览器在下载脚本时可以继续解析和渲染文档。

值得注意的是,使用defer属性的脚本,当有多个的时候, 这些脚本会按照他们在文档中排列的顺序载入执行。而使用asyn属性的脚本,当有多个的时候,会顺序开始触发载入, 但谁先完成载入就谁先执行,这就是说,他们的执行顺序可能是无序不确定的。在有的时候知道这点很重要,因为这可能涉及一些有强制顺序的逻辑处理。

}
1、什么是json数据
2、json数据的语法

一个json数据只有且只有一个数据,这个数据的数据类型必须是json支持的数据类型

3、json支持的数据类型

包含所有的数字,包括整数,小数:例如100,12.4,-2.3

正数前面不能加‘+’。json支持科学计数法

使用双引号括起来的数据;例如:“abc”, “abc123”

相当于Python的列表,用[]括起来,多个元素用逗号隔开;

相当于Python的字典,用{}括起来,多个键值对用逗号隔开,


将json数据转换成python数据(通过爬虫获取到别人提供的json数据,在python中出处理它)

注意:字符串中的内容必须是字符串数据

将python数据转换成json数据(python写后台接口将数据提供给客户端)

“abc”(单引号变成双引号)
不能转化成json,报错

注意:转换后都是字符串类型

将指定的对象转换成json数据,以字符串的形式返回这儿的对象指的就是python数据

注意:返回值是字符串,并且字符串的内容是json数据

json文件不一定是后缀是.json都是json文件,json文件是文件内容是json数据的文件。

load(文件对象) - 将指定文件中的内容读出来,并且转换成python对应数据。文件对象对应的文件必须是json文件。

dump(对象, 文件对象) - 将指定对象转换成是json格式的字符串,然后写入指定的文件中。

注意:这儿的对象对应的类型必须是能够转换成json的数据类型。

python中的数据请求(HTTP请求),是通过第三方库requsets来提供的。

get/post 方法都是发送请求获取接口提供的数据

获取数据的方法都是get请求

url - 需要获取的数据的接口地址

params - 字典,参数列表(给服务器发送请求的时候需要传给服务器的数据)

完整的接口:协议://主机地址/路径?参数名1=值1&参数名2=值2

发送请求,并且获取返回的数据,

服务器返回的数据叫响应

1、异常捕获报错的地方不报错

知道某段代码会出现异常,而且没有办法避免,同时又不希望出现异常的时候程序不崩溃;这个时候就可以通过异常捕获来让程序不崩溃并且自行处理异常。

a、try - except(可以捕获所有类型的异常)

代码段1(可能出现异常的代码段) 代码段2(出现异常后处理异常的代码段)

执行过程:执行代码段1,如果代码段1出现异常,程序不崩溃,直接执行代码段2

如果代码段1中没有出现异常,就不执行代码段2而是直接执行后面的其他语句。

b、try - except 错误类型 (捕获指定类型的异常)

代码段2(只有代码段1中出现了指定类型的异常才捕获)

执行过程:代码段1中出现指定类型错误就执行代码段2

d、try - except 错误类型1 - except 错误类型2…(同时捕获多种异常,可以对不同的异常做不同的处理)

说明:错误类型 - 可以是系统类型的错误,也可以是自定义错误类型(要求这个值必须是一个类,而且是Exception的子类)

}

我要回帖

更多关于 json is not defined 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信