babel

《前端开发从入门到放弃》

北战南征 提交于 2020-08-08 11:14:09
去年看到一篇文章 是写前端更新迭代的新技术,今天无意间又看到原创人翻译过来的文章啦 。这里贴下来 给大家灌一碗毒鸡汤 嘿,我最近接到一个 Web 项目,不过老实说,我这两年没怎么接触 Web 编程,听说 Web 技术已经发生了一些变化。听说你是这里对新技术最了解的 Web 开发工程师? 准确地说,我是一名「前端工程师」。不过你算是找对人了。我对今年的技术别提多熟了,前端可视化、音乐播放器、能踢足球的无人机,你尽管问吧。我刚去 JS 大会和 React 大会逛了一圈,没有什么新技术是我不知道的。 厉害。是这样的,我要开发一个网页,用来展示用户的最新动态。我想我应该通过后端接口获取数据,然后用一个 table 来展示数据,用户可以对数据进行排序。如果服务器上的数据变化了,我还需要更新这个 table。我的思路是用 jQuery 来做。 可别用 jQuery!现在哪还有人用 jQuery。现在是 2016 年了,你绝对应该用 React。 哦,好吧,React 是什么? React 是一个非常厉害的库,Facebook 的牛人写的。它能让页面更可控,性能极高,而且使用起来很简单。 听起来确实不错。我能用 React 展示服务器传来的数据吗? 当然可以,你只需要添加两个依赖,一个是 React,一个是 React DOM 额,等下,为什么是两个库? React 是我说的库,React

蚂蚁、字节、滴滴面试经历总结

 ̄綄美尐妖づ 提交于 2020-08-08 08:58:13
前言 最近两篇面试以及离职相关的文章不容错过哦。 离开蘑菇街后,我最近的一些想法 拼多多和酷家乐面试总结 今年面试还是比较顺的,面了五家公司(酷家乐、拼多多、字节、滴滴、蚂蚁),都过了。 在文章里我不仅会列出面试题,还会给到一些答题建议,个人能力有限,也不能保证我回答都正确, 如果有错误,希望能纠正我。 字节 一面 说一下浏览器缓存 浏览器缓存分为 强缓存 和 协商缓存 ,强缓存会直接从浏览器里面拿数据,协商缓存会先访问服务器看缓存是否过期,再决定是否从浏览器里面拿数据。 控制强缓存的字段有:Expires和Cache-Control,Expires 和 Cache-Control。 控制协商缓存的字段是:Last-Modified / If-Modified-Since 和 Etag / If-None-Match,其中 Etag / If-None-Match的优先级比Last-Modified / If-Modified-Since高。 cookie 与 session 的区别 Session 是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中; Cookie 是客户端保存用户信息的一种机制,用来记录用户的一些信息,也是实现 Session 的一种方式。 详见: COOKIE和SESSION有什么区别? 浏览器如何做到 session

vue告警信息:{ parser: "babylon" } is deprecated.

▼魔方 西西 提交于 2020-08-06 06:14:43
告警信息: 13% building modules 28/40 modules 12 active ...dex=0!\src\App.vue{ parser: "babylon" } is deprecated; we now treat it as { parser: "babel" }. 95% emitting 是prettier版本导致的,直接在项目中:npm install prettier@~1.12.0 -d 然后重新npm run dev 来源: oschina 链接: https://my.oschina.net/u/4405407/blog/4278989

webpack怎么安装和配置?

一个人想着一个人 提交于 2020-08-06 04:07:33
先全局安装 : npm i webpack webpack-cli -g 在工作文件夹 初始化 npm init -y 会出现一个package.json文件 在工作文件夹 根目录新建一个配置文件 ,js格式 webpack.config.js 在配置文件写 var path = require('path'); var HtmlWebpackPlugin = require('html-webpack-plugin'); //自动引入插件 module.exports = { mode:"development", //开发环境 //入口 entry:path.join(__dirname,'./src/main.js'), /*出口*/ output:{ path:path.join(__dirname,'./dist'), filename:"bundle.js" }, /*插件 是一 数组 里面的插件都是构造函数 需要 */ plugins:[ new HtmlWebpackPlugin({ template: path.join(__dirname,'./src/index.html'), filename: "index.html" }) ], //配置模块 /************************************************** *模块

Disable promise transpilation using babel-preset-env?

萝らか妹 提交于 2020-08-05 19:21:36
问题 I'm using babel-preset-env (Babel 6) and I can't find out how to disable the "promise" transpilation. I tried to use: { "presets": [ [ "env", { "exclude": ["transform-async-to-generator", "es6.promise"] } ] ], "plugins": [ "transform-object-rest-spread", "transform-class-properties", [ "fast-async", { "spec": true, "compiler": { "promises": true, "generators": false } } ] ] } and, while it doesn't throws any errors (unlike it happens when an invalid option is passed), it still transpiles

Disable promise transpilation using babel-preset-env?

徘徊边缘 提交于 2020-08-05 19:21:03
问题 I'm using babel-preset-env (Babel 6) and I can't find out how to disable the "promise" transpilation. I tried to use: { "presets": [ [ "env", { "exclude": ["transform-async-to-generator", "es6.promise"] } ] ], "plugins": [ "transform-object-rest-spread", "transform-class-properties", [ "fast-async", { "spec": true, "compiler": { "promises": true, "generators": false } } ] ] } and, while it doesn't throws any errors (unlike it happens when an invalid option is passed), it still transpiles

谈谈我们知识体系(js篇)

扶醉桌前 提交于 2020-08-05 07:50:09
前言 我是小白,励志要做 技术男神 的帅逼,目前住在 南京 ,做了快3年 前端工程师 ,会继续写笔记的。 js string对象的一些常用方法 普通方法 charAt() 方法返回字符串中指定位置的字符。 split // 通过把字符串分割成子字符串来把一个 String 对象分割成一个字符串数组。 slice // 提取字符串中的一部分,并返回这个新的字符串,获取索引号为1,2,3的字符串,即[1, 4) substr(start, length) // 方法返回字符串中从指定位置开始到指定长度的子字符串 substring(start, end) // 返回字符串两个索引之间(或到字符串末尾)的子串。 trim() // 删除一个字符串两端的空白字符 toLowerCase() // 将调用该方法的字符串值转为小写形式,并返回。 toUpperCase() // 将字符串转换成大写并返回。 正则方法 search // 执行一个查找,看该字符串对象与一个正则表达式是否匹配。 replace // 被用来在正则表达式和字符串直接比较,然后用新的子串来替换被匹配的子串。 match // 当字符串匹配到正则表达式(regular expression)时,match() 方法会提取匹配项。 Array对象的一些常用方法 不改变原数组的方法 concat() // 连接两个或多个数组

基于 React 开发了一个 Markdown 文档站点生成工具

早过忘川 提交于 2020-08-05 06:22:07
Create React Doc 是一个使用 React 的 markdown 文档站点生成工具。就像 create-react-app 一样,开发者可以使用 Create React Doc 来开发、部署 markdown 站点或者博客而不用关心站点环境配置信息。 特性 零配置书写 markdown 文档站点。 markdown 文档支持懒加载以及热加载。 基于文件目录自动生成多层级菜单。 支持一键发布到 GitHub Pages . 使用 create-react-doc 搭建的文档站点 blog 快速上手 执行如下命令: npx create-react-doc my-doc npm install && cd my-doc npm start 然后打开 http://localhost:3000/ 就可以看到文档站点。当准备发布到生产环境时,执行 npm run build 就能将文档站点打包压缩。 使用 create-react-doc 非常容易上手。开发者不需要额外安装或配置 webpack 或者 Babel 等工具,它们被内置隐藏在脚手架中,因此开发者可以专心于文档的书写。 下面提供三种方式来快速创建文档站点: npx npx create-react-doc my-doc npm npm init create-react-doc my-doc yarn yarn

Vue兼容IE11 很直接很实用

元气小坏坏 提交于 2020-08-04 15:10:22
问题:最近项目要求兼容IE11。what!!!(心凉半截)于是各种查资料、查前辈们分享的方法,终于发现了最有用的;现总结如下: 一、简单实用篇 1. npm安装babel-polyfill (如果你安装了淘宝镜像可以 cnpm ) npm install babel-polyfill --save-dev 2. 把babel-polyfill引入main.js import 'babel-polyfill' //main.js 3. 重启 npm run dev 二、添油加醋篇(全局GET请求+时间戳) // 添加请求拦截器 apiQuery.interceptors.request.use( (config) => { // 在发送请求之前做些什么 config.headers.authorization = sessionStorage.getItem('authorization') // 兼容IE if (config.method === 'get') { config.params = { t: Date.parse(new Date()) / 1000, ...config.params, } } return config }, (error) => { // 对请求错误做些什么 return Promise.reject(error) } ) 三、emmm....

Web前端最常用的技能整理,附最新前端学习资料和视频教程

不问归期 提交于 2020-07-29 09:46:32
一、框架与组件 bootstrap等UI框架设计与实现 伸缩布局:grid网格布局 基础UI样式:元素reset、按钮、图片、菜单、表单 组件UI样式:按钮组、字体图标、下拉菜单、输入框组、导航组、面包屑、分页、标签、轮播、弹出框、列表、多媒体、警告 响应式布局:布局、结构、样式、媒体、javascript响应式 第三方插件:插件管理 jQuery、zepto使用原理以及插件开发 支持amd、cmd、全局变量的模块化封装 $.fn.method = function(){} mvc/mvvm框架原理设计,vue/angular/avalon等 directive设计:html、text、class、html、attr、repeat、ref,可扩展 filter设计:bool、upperCase、lowerCase,可扩展 表达式设计:if-else等实现 viewmodel结构设计:例如数据,元素,方法的挂载与作用域 数据更变检测:函数触发,脏数据检测、对象hijacking polymer/angular2思想与设计思路 import技术 template和script引入方式 css样式命名空间隔离 简单复用第三方库 reactjs原理与使用 virtual dom单向数据绑定 js执行语法方式 UI由状态控制 commonJS/AMD/CMD 模块引入 模块定义 模块标识