此文已由作者张汉锐授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. vuex-class 提供了和 vuex 相关的全部装饰器,从而解决了上面 Vue.extend + vuex 的 「代码提示」「代码重构」两个问题,然后再通过手动添加类型声明,使得「类型检查」的工作也能生效 全部装饰器有: @State @Getter @Action @Mutation 还有一个辅助函数: namesapce  (用得比较少) 具体用法也很明确,看例子: import Vue from…
此文已由作者张汉锐授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 前言:对于我们而言,typescript 更像一个工具 官方指南 从 vue2.5 之后,vue 对 ts 有更好的支持.根据官方文档,vue 结合 typescript ,有两种书写方式: Vue.extend   import Vue from 'vue'   const Component = Vue.extend({    // type inference enabled   }) Class-…
使用TypeScript编写Vue项目也已经有了一段时间,笔者在刚刚使用TypeScript时候也是很茫然,不知道从何下手,感觉使用TypeScript写项目感觉很累赘并不像JavaScript那么灵活,因为TypeScript对于代码限制太多,在写代码的过程中时不时的就会抛出一个令你意想不到的错误,这一点笔者也是爬了不小的坑.可以使用了TypeScript一段时间之后,才知道TypeScript那是真的香(谁都逃不过的真香定理,O(∩_∩)O). 笔者在之前使用Vue的时候,曾经提到过如何在项…
vue项目的开发 我们已经通过命令行创建了一个vue项目,并且打开了这个项目.下面是这个文件的src文件夹,这个文件夹放了整个项目的核心代码. 一.vue文件的用处简介. 1.assets文件夹,用来存放图片,文件等资源.直接这样就可以访问到 src="./assets/logo.png",最好的访问方式 src="@/assets/logo.png" , @可以自己设置指向的文件夹, 2.componets文件夹,主要是用来存放我们的vue文件,之要路由能找到,怎…
如何加快Vue项目的开发速度 本文摘自奇舞周刊,侵权删. 现如今的开发,比如内部使用的管理平台这种项目大都时间比较仓促.实际上来说,在使用了webpack + vue 这一套来开发的话已经大大了提高了效率.但是对于我们的开发层面.还是有很多地方可以再次提高我们的项目开发效率,让我们更加专注于业务,毕竟时间就是生命.下面我们挨个来探讨. 巧用Webpack Webpack是实现我们前端项目工程化的基础,但其实她的用处远不仅仅如此,我们可以通过Webpack来帮我们做一些自动化的事情.首先我们要了解…
基于Typescript的Vue项目配置国际化 简介 使用vue-i18n插件对基于Typescript的vue项目配置国际化,切换多种语言, 配合element-ui或者其他UI库 本文以配置中英文两种语言为例 安装 安装国际化插件vue-i18n npm i vue-i18n --save 添加locales文件 在根目录下(src/)下新建目录 i18n/ 在src/i18n/目录下新建en.json文件,对应英文 { "lang": { "login": &…
自尤大去年9月推出vue对typescript的支持后,一直想开箱尝试,对于前端sr来说,vue的顺滑加上ts的面向对象,想着就非常美好~ 终于在两个月前,找到了个机会尝试了一把vue+ts的组合. 开文记录下vue和ts整合之旅和遇到的一些坑. vue 应该大部分人都知道vue,毕竟如今vue是与react肩并肩的存在,所以就不过多介绍啦. vue中文官网 官网上的教程就是最好的入门教程 typescript 我在前几篇文章就一直有在宣传typescript,简单列举下ts的优点 始于Java…
在使用vue做开发时,大部分人只会使用官方提供的脚手架搭建项目,脚手架虽然很好用,但想要成为一名优秀的前端开发者,webpack这一道坎是绕不开的,所以我们要学会脱离脚手架,利用webpack手动搭建vue项目.下面我们使用webpack构建一个简单的vue项目. 前置条件: 电脑已安装node 基本步骤如下: 1. 新建一个空目录,并进入到改目录 $ mkdir myApp $ cd myApp 2. 初始化一个最简单的采用模块化开发的项目 $ npm init 执行这条命令时,会询问你一些项…
Vue的灵活性总是让代码看起来非常洗练,对TypeScript来说也是一种挑战, 好在Vue对TypeScript进行了一次全方位的适配. 相对于React严谨的代码,Redux啰嗦的样板代码,Vue就显得非常灵活.Vue采用双向绑定原理,如下图所示 双向绑定的好处是这样的,在数据发生变化的时候,会发布一个叫“model-update”的事件,类似,当视图发生变化的时候,会发布一个叫“ui-update”的事件,Vue自动订阅了这些事件,并能自动处理好,我们无需关心到底是数据变化了还是UI变化了…
巧用Webpack Webpack是实现我们前端项目工程化的基础,但其实她的用处远不仅仅如此,我们可以通过Webpack来帮我们做一些自动化的事情.首先我们要了解require.context()这个API require.context() 您可以使用require.context()函数创建自己的上下文. 它允许您传入一个目录进行搜索,一个标志指示是否应该搜索子目录,还有一个正则表达式来匹配文件. 其实是Webpack通过解析 require() 的调用,提取出来如下这些信息: Direct…