Skip to content

QiYongchuan/notebook_vue

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

notebook_vue

source code

markdown的笔记代码,基于vue2

  • 目前实现的效果如图所示

image

-本仓库上传了项目的代码,但是想基于github的page页面实现这个项目的部署,可以在线使用,但是目前没有成功。

因为整个项目是手动创建的,现在还不清楚在不用npm run build 进行打包的操作的情况下,该怎么处理:)

这个项目算是第一个完整的简单的vue项目,其中遇到了不少的困难。第一次做是22年10月份,卡在了两个地方: 一是在某一步时,执行删除操作,最后竟然把所有的数据全部删完了,最后无法回退到前一步的代码。(今天读了一篇git版本控制的文章,才恍然大悟! 原来git是干这个的,版本控制,像闯关一样保存一下,保存关卡,怪掉了,退回前一关) 但当时不会,半夜程序崩溃了懊恼不已,经过大概几天,才慢慢解决那个bug。

第二个地方是到了最后一步,样式怎么也调不好了。很无奈,经过几天的挣扎,依然没有调好,最终算是烂尾结束了.....

最近又重新敲这个项目,这次依然不是那么顺利。卡在了这一步:

  selectedNote(){
    // 返回与selected匹配的笔记
    return this.notes.find(note => note.id === this.selectedId);
  },
  

存在一个问题是无法返回数据,因为notes里面没有note数据. notes的数据是通过addNote函数点击之后才生成的,我的理解是点击之后就会生成,生成之后就可以选择出点击的哪一条了,也就有数据了.....

但是逻辑上应该是:在没有点击之前,笔记也会有一条默认笔记的,所以不是undefine的。【这应该也是书上代码设计的最初逻辑】

但现在的问题是默认值没有生效,没有默认的笔记,所以在index中,如果展示selectedNote.content的时候,是报错的。打在控制台中的notes this.selectedId 均是undefined,在点击之后才出现有效的笔记,这下又回到最开始那个理解了

这个问题是这几天遇到的,但是没有解决掉。将这一版的代码也上传一下(在bug分支,桌面则是simple版本),先继续做别的项目吧,先暂时不想继续处理这个bug了,有点精疲力尽了。

现在上传的源码是之前样式调整不好的那一版代码,今天将样式调整了一下,修改成了固定高度。

addNote:function(){
  // 用一些默认值添加一条笔记,并将其添加到笔记数组中
    const time = Date.now()
    //新笔记的默认值
    const note ={
      id:String(time),
      title: 'New note ' + (this.notes.length +1),
      content:'**Hi!** This notebook is using [markdown] for formatting!',
      created:time,
      favorite:false,
    }  
    // 添加到列表中
    this.notes.push(note)
},

Releases

No releases published

Packages

No packages published