鍍金池/ 問答/PHP  HTML/ NodeJS初學(xué)在在學(xué)commonjs課程練習(xí)中關(guān)于暴露屬性的問題求解惑,謝謝了

NodeJS初學(xué)在在學(xué)commonjs課程練習(xí)中關(guān)于暴露屬性的問題求解惑,謝謝了

我是一個自學(xué)NodeJs 的初學(xué)者,在我學(xué)到commonjs這一節(jié)的知識點時,我自己做練習(xí),我根據(jù)教程視頻依葫蘆畫瓢,首先創(chuàng)建了一個tools.js文件,并暴露其中的屬性,代碼如下:

 var funs={
    add:function(x,y){
        console.log(x+y);
    },

    say:function () {
        console.log("this is function's say");
    }

}
module.exports=funs;
 var tools=require('F:\\NodeJs練習(xí)項目\\nodejs練習(xí)4\\test\\tools.js');

console.log(tools.funs.add(30,2));
console.log(tools.funs.say());

這么寫是對的,
var tools=require('F:\NodeJs練習(xí)項目\nodejs練習(xí)4\test\tools.js');這條語句,這么寫可以獲取到tools對象,但是視頻教程教的是var tools=require('tools')這樣就可以獲取到tools對象,而我只要這么寫,運行就報找不到tools模塊,這就說明沒有獲取tools對象成功,這么一來,在tools.js中我暴不暴露funs方法都無所謂嘍,反正都是把完整的路徑寫出來才能獲取到tools對象,而且,就算路徑寫對了,可以運行了,但是console.log打印出來的東西還是有不對的地方
32
undefined
this is function's say
undefined
這就是我打印出來的東西,那兩個undefined不知道是從什么地方來的。

以上就是我要問的了,一個是暴露后還是必須寫完整路徑的問題,還有一個就是這個打印出來結(jié)果的問題。求大佬幫忙解惑,謝謝!

回答
編輯回答
乖乖噠

1.相對路徑./tools
2.undefined來自于console.log(tools.funs.add(30,2));,其中tools.funs.add(30,2)返回結(jié)果是undefined

2018年3月2日 01:12