kongmingLatern / daily_plan

Record Your daily plan
1 stars 0 forks source link

2023-01-17 #13

Open kongmingLatern opened 1 year ago

kongmingLatern commented 1 year ago

2023-01-17

1. 你学习了哪些知识?

2. 学习过程中是否有存在的问题?

关于如何写每日任务:

如何写每日任务

kongmingLatern commented 1 year ago

今日学习总结

1. Docker

1.1 介绍

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 LinuxWindows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

1.2 编写

FROM python:3.8-slim-buster
WORKDIR /app
COPY .(本地路径) .(目标路径) 
RUN pip3 install -r requirement.txt
CMD ["python3", "app.py"]

1.3 构建

docker build -t my-finance .(这个是告诉docker在当前目录下寻找Dockerfile文件,不能省略)

1.4 运行

docker run -p 80:5000 -d my-finance

80: 主机上的端口 5000:容器上的端口(后续需要通过这个端口去访问项目) -d: 后台运行

2. Class 与 Function

2.1 Function

function Person() {}
// 实例方法
Person.prototype.running = function() {}
// 类方法
Person.randPerson() = function() {}

var p1 = new Person()
p1.running()
Person.randPerson()

2.2 Class

class Person {
    // 实例方法
    running(){}
    eating(){}

    // 类方法 静态方法
    static randPerson() {
        console.log(this) // Person
        ... 
        return new this(...)
    }
}
let p1 = new Person()
p1.running()
p1.eating()
Person.randPerson()

3. polkadot-js

import { SubstrateContextProvider, useSubstrate } from './substrate-lib';
import { DeveloperConsole } from './substrate-lib/components';

function Main() {
  const [accountAddress, setAccountAddress] = useState(null);
  const { apiState, keyring, keyringState } = useSubstrate();
  const accountPair =
    accountAddress &&
    keyringState === 'READY' &&
    keyring.getPair(accountAddress);

  return (
    ... 
  )
}
export default function App () {
  return (
    <SubstrateContextProvider>
      <Main />
    </SubstrateContextProvider>
  );
}

<SubstrateContextProvider> 的子组件内,就能用 useSubstrate() 来取得整个 Substrate Context, 当中包含了:

  1. socket: 对应现在连接的远端
  2. types: Substrate 网络内的自定义结构组
  3. keyring: 储存着用户帐号(用户公钥),也开放出接口来为数据和交易签名
  4. keyringState: 用户帐号状态,为 [null, 'READY', 'ERROR'] 其中一个
  5. api: Polkadot-JS API
  6. apiState: Polkadot-JS API 对远端的连接状态,为 [null, 'CONNECTING', 'READY', 'ERROR'] 其中一个