文章列表
林鑫 于 1个月前发表 554 0 1
前言 随着 Vue.js 越来越火,Vue.js 的相关插件也在不断的被贡献出来,数不胜数。比如官方推荐的 vue-router、vuex 等,都是非常优秀的插件。但是我们更多的人还只停留在使用的阶段,比较少自己开发。所以接下来会通过一个简单的 vue-toast 插件,来了解掌握插件的开发和使用。 认识插件 想要开发插件,先要认识一个插件是什么样子的。 Vue.js 的插件应当有一个公开方法 install 。这个方法的第一个参数是 Vue 构造器 , 第二个参数是一个可选的选项对象: MyPlugin.install = function(Vue, options){ Vue.myGlobalMethod = function(){ // 1. 添加全局方法或属性,如: vue-custom-element// 逻辑... } Vue.directive('my-directive', { // 2. 添加全局资源:指令/过滤器/过渡等,如 vue-touch bind (el, binding, vnode, oldVnode) {
1个月前
javascript技术
黄龙 于 1个月前发表 261 0 0
故事是这样开始的 * 产品K: 为什么我们的网站不能显示火星文? * 开发L: 什么样的火星文? * 产品K: ྊ你̆ូ们̆ូ城̆ូ里̆ូ人̆ូ真̆ូ会̆ូ玩̆ូ 类似这样的 * 开发L: 这是啥,看不清啊。 * 产品K: 我给你截图 [http://7tszky.com1.z0.glb.clouddn.com/FliL8ZoMB51VPZqheUpU-BNx4Aac] * 产品K: 你看知乎上是显示正常的 * 开发L: 哦,那我看看 作为一个技术很一般的前端很快发现这个和知乎的 font-family 的设置有关系,因为它设置了 PingFang SC 字体。作为一个喜欢问问题的前端那就要问 问题一:为什么其它字体显示就不正常PingFang SC字体就可以呢? 这̀是̀什̀么̀鬼̀(这是什么鬼?) uinicode里面叫结合附加符号 https://unicode-table.com/cn/blocks/combining-diacritical-marks/
1个月前
javascript技术
jacksun 于 2个月前发表 421 0 0
一.父组件向子组件发送数据 APP.vue(父组件) [http://7tszky.com1.z0.glb.clouddn.com/Fl7e_JmD9fxEj-qLiJYzwIUvI2O5] Hello.vue(子组件) [http://7tszky.com1.z0.glb.clouddn.com/FtyEdiklN5cohFMv4TGR-A8llijn] {{msgs}} [removed] export default { props:["msg"] } [removed]
2个月前
javascript技术
jacksun 于 2个月前发表 389 0 0
https://segmentfault.com/q/1010000007154452?_ea=1254954 [https://segmentfault.com/q/1010000007154452?_ea=1254954] beforeEnter:(to,from,next) http://www.cnblogs.com/zhengjialux/p/6357328.html [http://www.cnblogs.com/zhengjialux/p/6357328.html] router路由 http://www.cnblogs.com/axl234/p/5899137.html [http://www.cnblogs.com/axl234/p/5899137.html] vue-resource插件使用 http://www.bubuko.com/infodetail-1939987.html [http://www.bubuko.com/infodetail-1939987.html] Vuejs 用$emit 与 $on 来进行兄弟组件之间的数据传输
2个月前
javascript技术
ousiri 于 2个月前发表 457 7 0
LET * let和var很相似,用于声明一个变量。但是let声明的变量只存在块状作用域内。 functionorder(x, y) { if (x > y) { // (A)let tmp = x; x = y; y = tmp; } console.log(tmp===x); // ReferenceError: tmp is not definedreturn [x, y]; } * 使用大括号代替立即执行函数{ let a = 123; } console.log(a); // ReferenceError: a is not defined CONST * const则是用来声明某个变量等于它初始化的值,并且不能再改变。同样,const也是只存在块状作用域内的 const foo; // SyntaxError: Missing initializer in const declarationconst bar = 123;
2个月前
javascript技术
林鑫 于 2个月前发表 779 0 0
本文采用vue2.0+vuex+localStorage+sass+webpack,实现一个本地存储的记事本。兼容PC端和移动端。在线预览地址: DEMO [http://test.omwteam.com/] 功能说明 * 支持回车添加事件 * 支持事件状态切换 * 添加事件 -> 进入未完成列表 * 未完成 -> 已完成(勾选checkbox) * 未完成 -> 已取消(点击取消按钮) * 已完成 -> 未完成(取消勾选checkbox) * 已取消 -> 未完成(点击恢复按钮) * 支持控制台打印所有事件数据 * 支持筛选事件 * 支持编辑事件 * 支持删除事件 * 支持清空所有事件 * 支持本地化存储 * 支持折叠面板 项目笔记 本项目是使用vue-cli脚手架生成的项目,项目代码可以到我的github上clone下来。clone下来之后可进入文件目录 // 执行 npm install // 安装依赖完成之后再执行 npm run dev
2个月前
javascript技术
jaychen 于 3个月前发表 744 0 0
[http://7tszky.com1.z0.glb.clouddn.com/FrmeYH8QpSzTaDCZkd_77dWsucBJ] 一、变量 * 使用语义化的变量名称 Bad const yyyymmdstr = moment().format('YYYY/MM/DD'); Good const currentDate = moment().format('YYYY/MM/DD'); -------------------------------------------------------------------------------- * 使用可搜索的名称 通常我们读代码比写得多,所以代码都可读性以及可搜索性非常重要。如果对变量不负于语义化、易理解的名字,代码的阅读者将非常痛苦。buddy.js以及ESLint能够帮助我们定位未命名的常量。 Bad // 86400000 是什么鬼? setTimeout(blastOff, 86400000); Good
3个月前
javascript技术
黎清龙 于 3个月前发表 554 2 0
DECORATOR 学习小结 1. DECORATOR 是什么 decorator 是装饰者,是 ES7 的语法。 decorator 本质是一个 wrapper,可以动态增强【类】,【实例方法】的能力 被装饰者对于装饰者是毫无感知的 读者如果感兴趣,可以深入学习【装饰者模式】 要注意的是,在 ES7 中,decorator 只是一个语法糖而已,和 class 这些一样 可以参考 babel 转换之后的 ES5 代码 2. DECORATOR 的用法 2.1. 作用在类方法上 decorator 可以在定义类的时候,作用在类方法上,见下面的例子: functionreadonly(target, key, descriptor) { descriptor.writable = false; return descriptor; } classPeople{ @readonly sayName() { console.log(this.name); } } var p = new People();
3个月前
javascript技术
aresnliang 于 3个月前发表 1841 0 2
[http://7tszky.com1.z0.glb.clouddn.com/FqtYuU--4FP-FRCrEdh0OtuRfBA1] 2016年工作中做过最自豪的两件事情: * 把 Vue.js 和 Webpack 技术栈引进公司并逐步成为前端规范; * 开源 iView [https://github.com/iview/iview] 项目。 初识 VUE 第一次接触 使用 Vue.js 已经有一年半时间了,在接触 Vue 之前,有写过半年多的 Angular,所以刚了解 Vue 时,与很多开发者一样,认为 Vue 是一个轻量级的或是移动端的 ng,就好比 zepto 之于 jQuery。直到 15 年 10 月,打算用 Vue 开发一个个人项目时,才开始认真地学习它,发现 Vue 的使用方法和 API 设计如此优美简洁,而且中文文档甚是详细,我觉得这也是 Vue 受很多中国开发者喜爱的原因,许多初中级开发者、英文不好的、jQ导向的,在刚接触 MVVM 时,这点很有价值,再者 Vue 的使用和学习门槛相比 ng 和 React 的要求都要低,概念理解起来也容易。
3个月前
javascript技术
结一 于 4个月前发表 877 0 0
在DOM操作时代,tabs的结构一般如下: div.tabs ul.tabs-hd li.hd-tt*n div.tabs-bd div.bd-con*n 然后通过判断 li.hd-tt 的索引值来控制对应的 div.bd-con 的显示隐藏,由此封装成一个非常高效率的组件。 到了以React为代表的数据变化引起UI更新的时代,基于上面方式实现的tabs组件还是非常多的,以Ant Design,IMUI为例,都是这种实现方式。 那么现在我的问题是:在React中,tabs组件是否真的还需要按照这种显示隐藏多个 div.bd-con 的方式? 关于这个问题,这里抛出两个支撑观点: * 在使用tabs组件的时候,需要维护一个state来控制各个tab的切换 * 一般来说各个tab的内容结构多半相似甚至相同,只是数据不同而已 基于这两点,简化版本的tabs其实只需要 ul.tabs-hd 部分,对于内容部分,根本不需要放到tabs里面去封装成组件
4个月前
javascript技术
ouven ,https://ouvens.github.io/ 于 4个月前发表 1785 0 0
2016年结束了,前端技术的发展也将进入到一个新的阶段,那么未来又会给我们带来什么呢?这里就个人发表下意见,欢迎点评。 就前端主流技术框架的发展而言,过去的几年里发展极快,在填补原有技术框架空白和不足的同时也渐渐趋于成熟。未来前端在已经趋向成熟的技术方向上面将会慢慢稳定下来,并进入技术迭代优化阶段,例如语言标准、前端框架等。但这并不代表前端领域技术就此稳定了,因为新的技术方向已经出现,并在等待着下一个风口的到来。那么什么是下一个风口?虚拟现实?人工智能?或者其它的?不管未来如何,就前端应用开发方向来讲,MVVM、Virtual DOM和同构的技术解决方案依然会延续发展一段时间。而且这段时间内前端框架技术的变化将不会像原来一样具有颠覆性。 当 MVVM、Virtual DOM或同构等技术实践都有很成熟高效的框架和方案去实现了。那么对于移动端应用,前端要重点发展的下一步可能就是MNV 的原生NativeView开发,例如使用通用的MNV
4个月前
javascript技术
孙世吉 于 4个月前发表 809 1 0
1. 尾递归 说起 尾递归 就不能不提一下 尾调用(Tail Call) 。 尾调用:在函数的最后一步调用另外一个函数。 functionfunc(){ // ... other codereturn otherFunc();// 尾调用 } 尾递归:在函数的最后一步调用自身 functionfunc(){ // ... other codereturn func();// 尾递归 } 2. 尾调用和非尾调用 说到递归,那就必然要以斐波那契数列为例子 [http://7tszky.com1.z0.glb.clouddn.com/FnBilj1jvdqTOG8EkuDnazoeLKZg] 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、…… 简单的说,斐波那契数列中的每一项都是前两项的和。
4个月前
javascript技术