GithubHelp home page GithubHelp logo

blog's People

Contributors

chantzekin avatar

Stargazers

 avatar

Watchers

 avatar  avatar

blog's Issues

为终端设置 SS 代理

首先安装 polipo 程序

$ brew install polipo

设置 polipo 程序开机自启动

$ vim /usr/local/opt/polipo/homebrew.mxcl.polipo.plist

需要给 polipo 程序走 ss 客户端的代理,配置如下

<?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  <plist version="1.0">
    <dict>
      <key>Label</key>
      <string>homebrew.mxcl.polipo</string>
      <key>RunAtLoad</key>
      <true/>
      <key>KeepAlive</key>
      <true/>
      <key>ProgramArguments</key>
      <array>
        <string>/usr/local/opt/polipo/bin/polipo</string>
        <string>socksParentProxy=localhost:1080</string>
      </array>
  </dict>
</plist>

接着执行命令

$ ln -sfv /usr/local/opt/polipo/*.plist ~/Library/LaunchAgents
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist

并且启动

$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist
$ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.polipo.plist

shell 设置别名以简短命令执行

macOS 用户修改 ~/.bash_profile,用 zsh 的话就编辑 ~/.zshrc

$ vim ~/.bash_profile # 或 vim ~/.zshrc

尾部追加

# Polipo proxy
alias proxy="export http_proxy=http://localhost:8123; export https_proxy=http://localhost:8123"
alias unproxy="unset http_proxy; unset https_proxy"

重新读取配置

$ source ~/.bash_profile # 或 source ~/.zshrc 或直接 zsh

此后,需要走代理的时候执行 proxy 即可,取消的话就 unproxy

参考资料:
为终端设置Shadowsocks代理, 解决golang dep ensure依赖包安装被墙 - 作者:Quinton

使用 mobx 遇到的一些问题

使用 vscode 开发 mobx 搭配的 react 项目,es7 的 Decorators 预定义语法报错

使用 mobx 时,通过修饰符 observer 将组建变成响应式组建时,或定义需要关注的对象的其他情况时,会有报错的情况

@observer
class App extends Component { ... }

[js] Experimental support for decorators is a feature that is subject to change in a future release

vscode 会有波纹下划线的报错提醒,但是 webpack 能编译通过

这时候,可以在项目根目录创建 jsconfig.json,内容为

{
    "compilerOptions": {
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true
    }
}

ok,报错消除

使用 create-react-app 开发 mobx 项目时,编译的报错

由于预置的脚手架环境不支持 decorators 装饰模式,需要手动配置 babel plugin

先执行 create-react-appeject 指令来解除 cli 环境

$ npm run eject

安装装饰器支持

$ npm i --save-dev babel-plugin-transform-decorators-legacy

然后修改根目录下的 package.json (create-react-app 版本 1.3.3)

找到 babel 的配置对象增加插件

"babel": {
  "presets": [
    "react-app"
  ],
  "plugins": [
    "transform-decorators-legacy"
  ]
}

然后 $ npm run start 测试下就好

也有其他情况,譬如有自建的 .babelrc 或者不使用修饰符的情况

参照 如何(不)使用装饰器

补充:

macOS 上 MongoDB 的安装与配置

安装

更新 Homebrew

~ brew update

使用 Homebrew 安装 MongoDB 并等待安装完毕

~ brew install mongodb

配置运行

安装结束有提示运行的方法 mongod --config /usr/local/etc/mongod.conf,此为配置文件

systemLog:
  destination: file
  # 日志地址
  path: /usr/local/var/log/mongodb/mongo.log
  logAppend: true
storage:
  # 数据库读写目录
  dbPath: /usr/local/var/mongodb
net:
  # 监听 host
  bindIp: 127.0.0.1

测试一下,保持执行 mongod 的终端窗口,新建窗口执行命令 mongo

执行

> show dbs
admin  0.000GB
local  0.000GB
> use test
switched to db test
> db.test.insert({'name':'Josh'})
WriteResult({ "nInserted" : 1 })
> db.test.find()
{ "_id" : ObjectId("5985d0a015714f48c2655e57"), "name" : "Josh" }

AXZy6.png

图形操作管理软件可以选择 Studio 3T

以上

macOS 上 mysql 的安装与配置

安装

  1. 官网安装包 (5.7.19),链接

  2. 打开下载好的 dmg 镜像,按步骤安装

    • 安装过程中留意弹出窗口,有提示 root 账户的初始密码

      AXES1.jpg

  3. 安装成功后,系统偏好设置 -> msql -> 开启服务

  4. 终端输入 mysql 命令提示 command not found: mysql

  5. 此时应该设置环境变量

    • 查看是目录下否有 mysql

      $ cd /use/local/mysql/bin
      $ open .
      # 或者 ls
    • 设置环境变量

      $ vim ~/.bash_profile
      # 按 i,增加一行 PATH=$PATH:/usr/local/mysql/bin
      # esc -> :wq
      $ source ~/.bash_profile
  6. 终端执行 mysql -u root -p,输入安装时提示的密码

  7. 执行命令修改密码

    mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('test123');
  8. 后续可以用 Navicat 图形程序进行操作管理

以上

解决 vue 文件 script 内实例属性和方法无法转到定义问题

在 vue 文件的 script 标签内,鼠标指向 this.data.someVarthis.someMethod() 无提示,并按 F12ctrl / command + 点击 提示无法转向定义时,可通过下面方式解决

  1. 安装 vue 脚手架的 babel 插件
$ npm install @vue/cli-plugin-babel -D
# or
$ yarn add @vue/cli-plugin-babel -D
  1. 配置 babel(根据自己的 babel 文件类型自行调整)
// .babelrc.js
{
  presets: [
    '@vue/app',
     ...
  ]
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.