解决 TypeError: Cannot read properties of undefined (reading ‘xxx‘)
问题描述:Cannot read properties of undefined (reading ‘xxx’)问题解决:
情况一:出现该错误的原因是因为你花括号中的某些属性未定义。很有可能是因为你写错了属性名称
情况二:异步请求获取数据时,由于数据时异步获取的,所以一开始是没有该数据属性,这种情况下也会报这种错误。比如说我这里有一个数据detaildata,初始值为一个空对象。是不会报错的,但是,这样就会报错了。这是为什么呢?因为,detaildata.info已经是一个undefined了,你undefined.name就肯定会报错了。所以在初始化时,info属性赋值为空对象就行了。
只需要把summarydata声明为一个空对象即可。
无法生成同名文件夹存储照片问题
一开始使用hexo new post “文件名”创建文章时,只能创建出.md文件,并不能创建出同名文件夹来存储图片
后来找到这个方法,手动创建文件夹,但是图片还是无法显示,最后找到解决办法成功解决
在根目录下配置文件_config.yml 中有 post_asset_folder:false改为true。这样在建立文件时,Hexo会自动建立一个与文章同名的文件夹,这样就可以把与该文章相关的所有资源(图片)都放到那个文件夹里方便后面引用。如这里我放了一张test.jpg的图片。
git bash安装插件:npm install https://github.com/7ym0n/hexo-asset-image —save(这是个修改过的插件,经测试无问题),使用这个插件来引入图片,而不是网上那些方法里说的用传统md语法相对路径的方法。
插入图片时用这种方式:其中test.jpg就是你要引用的图片,我这里就是test.jpg,后面的This is an test image是图片描述,可以自己修改。
这样就能成功显示了,测试下吧:hexo cl && ...
创建Myblog中的错误
在创建我的博客时,一开始遇见的错误是推送不上去,再git bash here 中输入hexo d 时会一直卡在那里没有反应,后来在配置文件中把http的地址修改为ssh的地址就可以了,然后可以推送给上去但是不知道为啥一直打不开页面,后来才知道是因为创建仓库时,名字后面没有加.github.io 后缀。