从父目录

时间:2015-11-26 11:39:02

标签: javascript reactjs react-native

我无法从项目目录的父项导入文件。为了使事情变得尽可能简单,我在父目录中创建了新的react-native项目和文件'test.js'。我尝试使用以下代码导入它:

var Test = require('../test.js');

import Test from ('../test.js');

这些都不起作用 - 在xcode中运行时出现以下错误:

  

未捕获错误错误:UnableToResolveError:无法解析模块   来自/Users/UserName/Downloads/TestReact/index.ios.js的../test.js:   无效的目录/Users/UserName/Downloads/test.js

是否可以使用react-native从父目录导入文件? I̶̶k̶n̶o̶w̶̶i̶t̶̶w̶o̶r̶k̶s̶̶w̶i̶t̶h̶̶r̶e̶a̶c̶t̶J̶S̶。

此致

编辑 - 添加代码

test.js

'use strict';

import React, {Component,View,Text} from 'react-native';

  class Test extends Component{
  render(){
    return (
    <View>
      <Text>
        SAMPLE TEXT
      </Text>
    </View>
    );
  }
}
module.exports = Test;

index.ios.js

'use strict';
import React, {AppRegistry, View} from 'react-native';
import Test from '../test.js';

var TestReact = React.createClass({
  render: function() {
    return (
      <View><Test/></View>
    );
  }
});

AppRegistry.registerComponent('TestReact', () => TestReact);

编辑 - 添加文件层次结构: screenshot

编辑 - 实际上我错了,网络反应也是不可能的。当我尝试构建时出现以下错误:

  

模块解析失败:   /path_to_file/aaa1.js第1行:   意外的令牌您可能需要一个合适的加载器来处理这个问题   文件类型。

因此在问题中添加反应标记。

4 个答案:

答案 0 :(得分:2)

尝试此./../Component.js。这个对我有用 此外,如果您需要从相邻目录./../AdjDir/Component.js

访问组件

答案 1 :(得分:1)

最后我可以回答一个堆栈溢出问题:

只需在jsconfig.json下面添加到react文件夹的基本路由即可。 (假设您将所有代码都放在“ src”文件夹中)

example_react_app
  ---> public
  ---> src
  ---> jsconfig.json

jsconfig.json文件内容

{
  "compilerOptions": {
    "baseUrl": "src",
    "paths": {
      "*": ["src/*"]
    }
  }
}

答案 2 :(得分:0)

此问题可能是因为react仅允许您从src文件夹导入。因此,所有资源都必须放在此目录中。

另外,当您返回两个以上的父目录时,您需要使用以下语法: ../../../myfolder/myFile.js enter image description here

答案 3 :(得分:0)

我看起来很好。您是否尝试过

import Test from '../test'; 

代替

 import Test from '../test.js';

也尝试不带小括号“()”;

我以此解决了我的问题。希望对您有所帮助。