이것은 백엔드 api가 필요하지 않거나 사용자가 데이터베이스를 등록 할 필요가없는 가장 간단한 블록 체인 애플릿 "hello blockstack"빌드 프로세스입니다.

in #blockchain8 years ago (edited)

屏幕快照 2018-04-30 下午5.39.10.png

이 튜토리얼에서는 다음 도구를 사용합니다:

npm

browserify

blockstack.js

첫 번째 단계: yearoman 설치

npm install -g yo generator-blockstack

두 번째 단계 : 프로그램에 대한 새 디렉토리 만들기

mkdir hello-blockstack && cd hello-blockstack

yo blockstack

세 번째 단계: 실행

npm run start

주요 코드 설명 및 이해:

주요 파일은 dom 컨텐츠 로드가 완료될 때까지 리스너 이벤트에 포함되는 app.js입니다.

document.addEventListener("DOMContentLoaded", function(event) {

})

여기에는 사용자의 요청과 시작을 처리하는 signin handler가 있습니다.

document.getElementById('signin-button').addEventListener('click', function() {

blockstack.redirectUserToSignIn()

})

우리는 또한 사용자의 출시를 처리하기위한 신호 아웃 핸들러를 가지고 있습니다.

document.getElementById('signout-button').addEventListener('click', function() {

blockstack.signUserOut(window.location.origin)

})

다음으로 사용자의 이력서를 표시하는 함수가 있습니다.

function showProfile(profile) {

var person = new blockstack.Person(profile)

document.getElementById('heading-name').innerHTML = person.name()

document.getElementById('avatar-image').setAttribute('src', person.avatarUrl())

document.getElementById('section-1').style.display = 'none'

document.getElementById('section-2').style.display = 'block'

}

사용자가 로그인 할 수있는 세 가지 상태가 있습니다.

The user is already signed in The user has a sign in request that is pending The user is signed out

코드 표현 방법

if (blockstack.isUserSignedIn()) {

// Show the user's profile

} else if (blockstack.isSignInPending()) {

// Sign the user in

} else {

// Do nothing

}

사용자 요청 중

if (blockstack.isUserSignedIn()) { var profile = blockstack.loadUserData().profile showProfile(profile) } else if (blockstack.isSignInPending()) { blockstack.handlePendingSignIn().then(function(userData) { window.location = window.location.origin }) }

프로그램 화면표시 스타일에 대한 제어 파일:

프로그램 표시 스타일을 제어하는 ​​파일은 (/ public / manifest.json입니다.

소스 코드 구현:

git init

git add . && git commit -m "first commit"

그런 다음 github에 새로운 보고서를 추가하십시오.

https://github.com/new

git remote add origin git@github.com:YOUR_USERNAME_HERE/hello-blockstack.git

git push origin master

blockstack 커뮤니티에 추가하려면 다음과 같이 하십시오.

https://contribute.blockstack.org/

Download blockstack:https://blockstack.org/install