小编Mar*_*nez的帖子

将签名交易发送给Ropsten或Truffle与Trezor(硬件钱包)开发网络

我试着去整合web3jsTrezor松露开发网络或使用设有通往Ropsten测试网络.

我们的想法是使用硬件钱包签署交易,然后使用web3js发送原始交易

我得到了我们没有平衡来进行交易,可能是因为web3js没有使用10个松露帐户中的一个并使用不在我的本地网络中的trezor地址.

在ropsten我有一些醚,我得到"无效地址"

有没有办法使用web3js将已签名的交易(使用trezor)发送到松露开发网络?我的意思是,有没有办法将trezor地址包含在松露网络中?

松露的情况在这里有更详细的解释,但问题可以概括为" 有没有办法将硬件钱包纳入松露开发网络? ":https://github.com/trufflesuite/truffle/issues/973

使用ropsten我已经设法发送一个事务并在回调中接收一个事务哈希,但如果我们查询该事务,我们得到该事务不存在..所以..这怎么可能?

我也尝试将合同部署到Ropsten,现在我在调用智能合约函数时得到"无效地址".也许签名功能错了?有人可以将Trezor交易登录与web3js集成吗?

你们看到我们遵循的签名和发送过程中有什么问题吗?也许R,V和S参数处理有问题..

另一个重要的事情是我使用https://github.com/ethereumjs/ethereumjs-tx来创建原始事务

web3js,truffle和trezzor中发布的问题可以提供更多信息:

亲切的问候

 trezorLogin = async()=> {
        let trezor=  await this.getTrezor();

        // site icon, optional. at least 48x48px
        let hosticon = 'https://doc.satoshilabs.com/trezor-apps/_images/copay_logo.png';
        // server-side generated and randomized challenges
        let challenge_hidden = '';
        let challenge_visual = '';
        //use anonimous functions on callback otherwise returns cross origin errors …
Run Code Online (Sandbox Code Playgroud)

ethereum truffle web3js trezor

16
推荐指数
1
解决办法
1066
查看次数

IE上的onchange事件和程序输入值更改冲突

我注意到,在不同版本的Internet Explorer中,当输入的值被js函数更改时,不会捕获onchange事件,这种行为在其他浏览器(如Mozilla或Chrome)中不会发生.

稍微调查一下,我发现onchange当js改变值时,IE 中的正确操作无法保证:

function onchangeRequest(){
  console.log('onchange fired');
}

function changeValue (input){
  input.value +=  "hello"
}
Run Code Online (Sandbox Code Playgroud)
<h4> focus lost doesnt invoke onchangeRequest() </h4>

<input id="valueInput"  onkeyup="changeValue(this);" onchange="onchangeRequest();" />

<h4> focus lost invokes onchangeRequest() </h4>

<input id="valueInput" onchange="onchangeRequest();" />
Run Code Online (Sandbox Code Playgroud)

我还没有找到令人信服的解释,说明为什么IE无法正确解决这些问题.这是我们必须处理的"已知错误"吗?是否有任何官方参考声称IE不保证onchange事件的正确行为?

html javascript internet-explorer

11
推荐指数
1
解决办法
3033
查看次数

如果没有GPS,则无法使用navigator.geolocation进行反应原生的当前位置

讨论和答案后的简要总结:

使用EXPO sdk,如果没有在android中授予FINE_LOCATION,则无法获取设备位置.FINE_LOCATION是获取位置的唯一方法,因此,您无法获得hardware.network.location.这意味着:使用android> 6,您无法使用WIFI /移动网络获取当前位置,您必须启用位置.

Expo github讨论: https ://github.com/expo/expo/issues/1339

最初的问题:

我正在使用expo和react-native-maps工作在本机应用程序 ,我需要获得用户当前位置的纬度和纵向.

即时通讯使用navigator.geolocation API

打开GPS我没有问题,但我需要根据网络提供商获得没有GPS的当前位置.

问题是,当应用程序在andoiod> 6上使用expo运行时,我收到此错误:

21:50:53:在449ms完成构建JavaScript包21:50:55:禁用位置服务 - node_modules\react-native\Libraries\BatchedBridge\NativeModules.js:80:57 in - node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:347:19 in __invokeCallback - ...来自框架内部的4个堆栈帧

在IO和android <= 5中,它运行良好.

这是组件的代码:

class MyComponent extends Component {

    componentWillMount = () => {    
            this.getCurrentLocation();    
    }
    getCurrentLocation = () =>
         navigator.geolocation.getCurrentPosition(
            (position) => {
                let currentUserPosition = position.coords;
                alert(JSON.stringify(currentUserPosition));
            },
            (error) => {
                console.log(error);
            },
            {
                enableHighAccuracy: false,
                timeout: 20000, …
Run Code Online (Sandbox Code Playgroud)

gps location react-native expo

11
推荐指数
1
解决办法
7283
查看次数

React native router flux:TypeError:undefined不是函数(评估'addListener')

我使用这个主要依赖项工作在本机应用程序上:

  • 反应原生
  • 反应原生路由器通量
  • 做出反应
  • 博览会

我正在使用这个package.json:

"dependencies": {
    "expo": "23.0.4",
    "humps": "^2.0.0",
    "install": "^0.10.1",
    "lodash": "^4.17.4",
    "native-base": "^2.3.5",
    "react": "16.0.0",
    "react-native": "0.50.4",
    "react-native-extend-indicator": "^0.1.2",
    "react-native-keyboard-aware-scroll-view": "^0.4.2",
    "react-native-maps": "^0.19.0",
    "react-native-maps-directions": "^1.3.0",
    "react-native-modal-datetime-picker": "^4.13.0",
    "react-native-qrcode": "^0.2.6",
    "react-native-router-flux": "4.0.0-beta.24",
    "react-native-svg-uri": "^1.2.3",
    "react-native-swiper": "^1.5.13",
    "react-native-vector-icons": "^4.4.2",
    "react-navigation-redux-debouncer": "^0.0.2",
    "react-redux": "^5.0.6",
    "redux": "^3.7.2",
    "redux-logger": "^3.0.6",
    "redux-thunk": "^2.2.0",
    "swagger-client": "2.1.32"
  }
Run Code Online (Sandbox Code Playgroud)

应用程序正在使用expo所以我使用以下命令安装依赖项:

  • 纱线安装

然后运行应用程序

  • yarn start --reset-cache

我工作正常,因为我想添加一个新的依赖项,所以我删除了node_modules文件夹和yarn.lock文件,添加了新的依赖项并再次执行yarn安装.

之后,我在打开应用程序时遇到此错误:

TypeError:undefined不是函数(评估'addListener')

在此输入图像描述

它与react-navigation有关,但我使用的是react-native-router-flux 4.0.0-beta.24,它在内部使用react-navigation ^ 1.0.0-beta.19.

我最近注意到使用react-navigation的人对此有一些麻烦(https://github.com/react-navigation/react-navigation/issues/3416)但使用beta.28版本.

如果我回到之前的node_modules文件夹(从垃圾箱)我的应用程序运行良好,所以..可能是因为我的package.json 的^符号的某些依赖性不再兼容..也许thunk或反应本机路由器与我的反应本机版本的通量.

有任何想法吗?

当我使用react thunk中间件时,这是代码的一部分:

import {applyMiddleware, …
Run Code Online (Sandbox Code Playgroud)

react-native redux redux-thunk react-native-router-flux react-navigation

3
推荐指数
1
解决办法
3528
查看次数