function getTreeDeep(data) { let arr = []; arr.push(data); let depth = 0; while (arr.length > 0) { let temp = []; for (let i = 0; i < arr.length; i++) { temp.push(arr[i]); }...
js 面向对象编程之多继承
单继承 var extend = function(target, source) { // 遍历源对象中的属性 for (var property in source) { // 将源对象中的属性复制到目标对象中 target[property] = source[property]; } // 返回目录对象 return target...
js 面向对象编程之继承
私有属性与私有方法,特权方法,对象公有属性和对象共有方法,构造器,类静态公有属性,类静态公有方法 var Book = function(id, name, price) { // 私有属性 var num = 1; // 私有方法 function checkId() { console.log('checkId'); ...
vue-cli 之优化热刷新
babel-plugin-dynamic-import-node .babelrc { "plugins": ["dynamic-import-node"] } babel.config.js module.exports = { presets: [ '@vue/cli-plugin-babel/preset' ], env: { development: { plugins: [ ...
eslint如何配置 commit 提交时验证
package.json 或者 eslintrc文件都可以 "gitHooks": { "pre-commit": "lint-staged" }, "lint-staged": { "*.{js,jsx,vue}": [ "vue-cli-service lint", "git ad...
vue面试题 vue-cli4 脚手架相关配置详解
Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统,提供: 通过 @vue/cli 实现的交互式的项目脚手架。通过 @vue/cli + @vue/cli-service-global 实现的零配置原型开发。一个运行时依赖 (@vue/cli-service),该依赖:可升级;基于 webpack ...
vue 进阶高级前端
1、 函数组件 函数组件 是无状态的,没有生命周期或方法,因此无法实例化创建一个函数组件非常容易,你需要做的就是在SFC中添加一个 functional: true 属性,或者在模板中添加 functional。由于它像函数一样轻巧,没有实例引用,所以渲染性能提高了不少。函数组件依赖于上...
vue-ssr 服务端渲染
server 配置 const Koa = require('koa'); const Router = require('koa-router'); const serve = require('koa-static'); const path = require('path'); const fs = require('fs'); const backendApp = new Koa(); const frontendApp = new Koa(); const backendRout...
解决flex布局下, element-ui table组件不能跟随父组件的宽度而
bug: 我在flex布局的元素中使用了elementui的table组件,饿了么的table上会被加一个动态的宽度, 当第一次改变flex元素宽度的时候。table的动态宽度会变化,第二次和以后就不会变化了。第一种:给使用flex的元素加上 overflow-x:hidden 第二种:可以将设置了flex属性的容...
vue element-ui 组件按需引入踩过的坑
import Vue from 'vue' import App from './App.vue' import { Button } from 'element-ui' import 'element-ui/lib/theme-chalk/index.css' Vue.use(Button) Vue.config.productionTip = false new Vue({ render: h => h(App), }).$mount('#app') 代码...