Không hiểu về path.resolve



  • Hi!
    Mình đọc cái document này khá nhiều lần mà cũng không hiểu lắm:
    https://nodejs.org/api/path.html#path_path_resolve_path
    Tại sao với đoạn code sau:
    'use strict';

    var path = require('path');

    var result = path.resolve('C:\Users', 'abc', '/document');

    console.log(result);

    actual: C:\document
    expected: C:\Users\abc\document


  • Global Moderator

    @Nguyễn-Văn-Chúc-Ân Trong link tài liệu bạn gửi, có 1 ví dụ như này

    path.resolve('/foo/bar', '/tmp/file/')
    // returns '/tmp/file'
    

    Tham số cuối cùng của hàm đang truyền vào đường dẫn tuyệt đối, từ gốc của thư mục. Như vậy kết quả là /tmp/file

    Trong trường hợp của bạn cũng tương tự như thế, tham số cuối cùng bạn đã truyền vào /document nên path.resolve sẽ quay lại gốc thư mục, cụ thể là ổ C của bạn :)))

    Nên bạn sửa lại tham số cuối cùng là được, bỏ dấu sổ chéo / đi. Như thế này

    'use strict';
    
    var path = require('path');
    
    var result = path.resolve('C:\Users', 'abc', 'document');
    
    console.log(result); // Output: C:\Users\abc\document
    


  • @Vũ đã nói trong Không hiểu về path.resolve:

    Trong link tài liệu bạn gửi, có 1 ví dụ như này

    Wow, Thanks a lot. :)
    Website này thật tuyệt!


Log in to reply