zoukankan      html  css  js  c++  java
  • 前端生态系统总结

    前端正在慢慢领悟学习中...

    常用模块、库、插件备忘 

    //DOM操作
    react、react-dom
    //路由相关
    react-router、react-router-dom
    //状态管理
    redux、react-redux
    //异步逻辑操作
    redux-saga
    
    //处理es6和JSX
    babel-loader
    //处理.css文件
    style-loader css-loader
    
    //webpack开发服务器
    webpack-cli 
    webpack-dev-server
    webpack-merge:提供合并操作
    
    //把所有css都打包到一个独立的文件
    extract-text-webpack-plugin
    //清理打包后的文件
    clean-webpack-plugin
    //将打包后的js文件自动导入到html文件中
    //1.为html文件引入外部资源如script、link,并动态添加每次compile后的hash,防止引用缓存的外部文件
    //2.生成创建html入口文件,配置N个该plugin可以生成N个页面入口
    html-webpack-plugin
    //静态检查代码的语法和风格
    eslint 
    
    express:基于 Node.js 的web应用开发框架
    if-env:用于切换开发和生产环境运行 npm start
    compression:服务端gzip压缩 
    

    样式管理

    Autoprefixer:自动管理浏览器前缀
    

    常用工具

    Webpack: 打包工具,模块化编程
    Babel: 转码工具,解决在低端版本浏览器上的兼容问题
    react-devtools: React的调试工具,chrome插件
    redux-devtools-extension: Redux调试工具,chrome插件
    

    Babel

    必备插件

    babel-cli 
    babel-core 
    babel-preset-env 
    babel-preset-react 
    babel-preset-stage-2

    jest

    Mocha + chai + jsdom + sinon + ...

    //安装
    npm install --save-dev jest
    npm install -g jest
    //配置
    "jest": {
        "testRegex": "/test/.*.test.jsx?$"
     }
    //代码覆盖率
    jest --coverage
    

    React

    //断点调试必备插件(VSCode通过Chrome的debug protocol连接到Chrome)
    Debugger for Chrome
    //调试方法1
    npm start --> chrome页面F12 --> tab页source中js文件打断点或加debugger --> 页面操作
    //调试方法2
    npm start --> 菜单:启动调试 -->vscode中代码文件直接打断点
    

    需要配置 .vscodelaunch.json 文件

    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "chrome",
          "request": "attach",
          "name": "Attach to Chrome",
          "port": 9222,
          "sourceMaps": true, 
          "webRoot": "${workspaceFolder}"
        },
    
        {
          "type": "chrome",
          "request": "launch",
          "name": "Launch Chrome against localhost",
          "url": "http://localhost:3001",
          "webRoot": "${workspaceFolder}",
          "sourceMaps": true, 
          "skipFiles": [
            "node_modules/**"
            ],
            "sourceMapPathOverrides": {
            "webpack:///*": "${webRoot}/*"
            }
        }
      ]
    }
    

    扩展了解launch.json文件中的属性

    "request":调试启动方式,launch:每次重新加载 attach:附加到已有浏览窗口
    
    ${workspaceRoot}:VSCode中打开文件夹的路径
    ${workspaceRootFolderName}:VSCode中打开文件夹的路径, 但不包含"/"
    ${file} :当前打开的文件
    ${relativeFile}:当前打开的文件,相对于workspaceRoot
    ${fileBasename} :当前打开文件的文件名, 不含扩展名
    ${fileDirname} :当前打开文件的目录名
    ${fileExtname}:当前打开文件的扩展名
    ${cwd} :当前启动时的工作目录
    

    react-devtools + redux-devtools-extension

  • 相关阅读:
    Java程序开发必备的6种知识
    Java技术在多数据库系统中的应用研究
    解决J2EE系统应用性能问题常用方法
    在Java中如何跳出当前的多重嵌套循环?
    Java学习是由简入难的学习过程
    浅谈Java SE、Java EE、Java ME三者的区别
    J2ee的学习方法及步骤摘要
    IOS 使用GCD改善性能
    IOS Cell重用机制
    BUG--tomcat更改目录失败
  • 原文地址:https://www.cnblogs.com/wjcx-sqh/p/9574046.html
Copyright © 2011-2022 走看看