最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

“pnpm不是內(nèi)部或外部命令” 錯誤的完整解決方案

 更新時間:2025年10月18日 11:03:39   作者:Coderabo  
pnpm(performant npm)是一個快速、節(jié)省磁盤空間的 JavaScript 包管理器,與傳統(tǒng)的 npm 和 yarn 相比,pnpm 采用了一種革命性的依賴管理方式——內(nèi)容可尋址存儲和硬鏈接機制,本文給大家介紹了pnpm不是內(nèi)部或外部命令”錯誤的完整解決方案,需要的朋友可以參考下

深入剖析 “pnpm 不是內(nèi)部或外部命令” 錯誤:前端的完整解決方案

理解問題的根源

什么是 pnpm?為什么它如此重要?

pnpm(performant npm)是一個快速、節(jié)省磁盤空間的 JavaScript 包管理器。與傳統(tǒng)的 npm 和 yarn 相比,pnpm 采用了一種革命性的依賴管理方式——內(nèi)容可尋址存儲和硬鏈接機制。

讓我用一個簡單的比喻來解釋:想象一下你的電腦里有多個項目都使用了 React。傳統(tǒng)的包管理器會在每個項目的 node_modules 中都復(fù)制一份 React 的代碼,這就像在圖書館的每個書架上放同一本書的多個副本。而 pnpm 的做法則像是在圖書館中心位置放一本原著,然后在各個書架放置指向這本原著的目錄卡片。這種方式不僅大大提升了依賴安裝速度,還能減少 60-70% 的磁盤空間占用。

錯誤信息的真正含義

當(dāng)我們在命令行中輸入 pnpm install 并看到 “‘pnpm’ 不是內(nèi)部或外部命令” 的錯誤提示時,操作系統(tǒng)實際上是在告訴我們一個關(guān)鍵信息:在當(dāng)前系統(tǒng)的 PATH 環(huán)境變量所包含的目錄中,找不到名為 pnpm 的可執(zhí)行文件。

這個錯誤與我們在 Windows 中遇到的其他命令找不到錯誤本質(zhì)相同,只是這次的主角換成了前端開發(fā)中重要的包管理工具。

深入理解 PATH 環(huán)境變量

PATH 環(huán)境變量是操作系統(tǒng)中用于指定可執(zhí)行文件搜索路徑的機制。當(dāng)我們輸入一個命令時,操作系統(tǒng)會按照 PATH 中定義的目錄順序依次查找對應(yīng)的可執(zhí)行文件。

讓我用一個實際例子來說明:假設(shè) pnpm 被安裝在 C:\Users\你的用戶名\AppData\Roaming\npm 目錄下,而這個目錄不在 PATH 中。當(dāng)你輸入 pnpm 命令時,系統(tǒng)會依次檢查 PATH 中的所有目錄:

  • C:\Windows\System32 - 沒有 pnpm
  • C:\Windows - 沒有 pnpm
  • C:\Windows\System32\WindowsPowerShell\v1.0 - 沒有 pnpm
  • … 一直檢查完所有目錄都沒有找到 pnpm

這時系統(tǒng)就會拋出我們看到的錯誤信息。

我們可以通過以下命令查看當(dāng)前的 PATH 配置:

# 在 Windows 中查看 PATH 環(huán)境變量
echo %PATH%

# 在 Linux/macOS 中查看 PATH 環(huán)境變量
echo $PATH

pnpm 的多種安裝方法詳解

通過 npm 安裝 pnpm(推薦方案)

這是最常用且最可靠的安裝方法,前提是已經(jīng)安裝了 Node.js 和 npm。我在大多數(shù)項目中都推薦使用這種方式,因為它簡單直接,且與現(xiàn)有的 Node.js 生態(tài)完美集成。

檢查 Node.js 和 npm 是否已安裝

在開始安裝 pnpm 之前,我們需要確?;A(chǔ)環(huán)境已經(jīng)就緒:

# 檢查 Node.js 版本
node --version

# 檢查 npm 版本
npm --version

如果以上命令都能正常執(zhí)行并顯示版本號,說明環(huán)境準備就緒。如果出現(xiàn)命令未找到的錯誤,你需要先安裝 Node.js。

這里有個小技巧:我建議使用 nvm(Node Version Manager)來管理 Node.js 版本,這樣可以輕松在不同項目間切換 Node.js 版本:

# 安裝 nvm(Windows 用戶使用 nvm-windows)
# 然后安裝并使用最新的 LTS 版本
nvm install --lts
nvm use --lts

通過 npm 全局安裝 pnpm

確認 Node.js 環(huán)境正常后,我們就可以安裝 pnpm 了:

# 使用 npm 全局安裝 pnpm
npm install -g pnpm

# 安裝完成后驗證 pnpm 版本
pnpm --version

這里我想分享一個實際工作中遇到的案例:有一次我在為一個大型企業(yè)項目配置環(huán)境時,發(fā)現(xiàn) pnpm 安裝后仍然無法使用。經(jīng)過排查,發(fā)現(xiàn)是權(quán)限問題。在 Linux/macOS 系統(tǒng)中,可能需要使用 sudo:

# 在 Linux/macOS 上可能需要使用 sudo
sudo npm install -g pnpm

而在 Windows 系統(tǒng)中,如果遇到權(quán)限問題,可以用管理員身份運行命令提示符。

使用獨立腳本安裝

對于沒有安裝 Node.js 的環(huán)境,或者想要完全獨立安裝的情況,可以使用官方提供的獨立安裝腳本。這種方式特別適合在 CI/CD 環(huán)境中使用。

Windows 系統(tǒng)安裝步驟

在 Windows PowerShell 中執(zhí)行:

# 使用 PowerShell 安裝 pnpm
iwr https://get.pnpm.io/install.ps1 -useb | iex

這個命令會下載安裝腳本并自動執(zhí)行。我特別喜歡這種方式的一點是,它會自動處理環(huán)境變量的配置,減少手動配置的麻煩。

Linux/macOS 系統(tǒng)安裝步驟

在終端中執(zhí)行:

# 使用 curl 安裝
curl -fsSL https://get.pnpm.io/install.sh | sh-

# 或者使用 wget 安裝
wget -qO- https://get.pnpm.io/install.sh | sh-

安裝完成后,記得重新啟動終端或者重新加載 shell 配置:

# 對于 Bash
source ~/.bashrc

# 對于 Zsh  
source ~/.zshrc

# 對于 Fish
source ~/.config/fish/config.fish

使用系統(tǒng)包管理器安裝

不同的操作系統(tǒng)可以使用各自的包管理器安裝 pnpm,這是我個人最推薦的方式,因為能與系統(tǒng)包管理保持同步更新。

在 Windows 上使用 Chocolatey

如果你使用 Chocolatey 作為 Windows 的包管理器:

# 使用 Chocolatey 包管理器安裝
choco install pnpm

# 更新 pnpm
choco upgrade pnpm

在 macOS 上使用 Homebrew

對于 macOS 用戶,Homebrew 是最佳選擇:

# 使用 Homebrew 安裝
brew install pnpm

# 更新 pnpm
brew upgrade pnpm

在 Linux 上使用對應(yīng)發(fā)行版的包管理器

不同的 Linux 發(fā)行版有不同的包管理器:

對于基于 Debian 的系統(tǒng)(Ubuntu/Debian):

# 更新包列表
sudo apt-get update

# 安裝 pnpm
sudo apt-get install pnpm

# 更新 pnpm
sudo apt-get upgrade pnpm

對于基于 Red Hat 的系統(tǒng)(Fedora/CentOS/RHEL):

# 安裝 pnpm
sudo dnf install pnpm

# 更新 pnpm
sudo dnf upgrade pnpm

對于 Arch Linux 用戶:

# 使用 pacman 安裝
sudo pacman -S pnpm

# 更新 pnpm
sudo pacman -Syu pnpm

環(huán)境變量配置的完整指南

Windows 系統(tǒng)環(huán)境變量配置詳解

在 Windows 系統(tǒng)中配置環(huán)境變量是解決 “pnpm 不是內(nèi)部或外部命令” 的最常見方法。讓我?guī)阃暾咭槐檫@個過程。

找到 pnpm 的安裝路徑

首先我們需要知道 pnpm 被安裝到了哪里:

# 查找 npm 的全局安裝路徑
npm config get prefix

# 通常路徑會是:
# C:\Users\你的用戶名\AppData\Roaming\npm

如果通過 npm 安裝,pnpm 的可執(zhí)行文件通常會在上述路徑的 node_modules 目錄中,或者直接在 npm 目錄下。

還有一個方法可以精確找到 pnpm 的位置:

# 在 Windows PowerShell 中查找 pnpm
Get-Command pnpm | Format-List

# 或者在命令提示符中
where pnpm

手動添加環(huán)境變量

現(xiàn)在我們來實際添加環(huán)境變量:

打開系統(tǒng)屬性

  • 右鍵點擊"此電腦"或"我的電腦"
  • 選擇"屬性"
  • 點擊"高級系統(tǒng)設(shè)置"

進入環(huán)境變量配置

  • 在"系統(tǒng)屬性"窗口中點擊"環(huán)境變量"按鈕

編輯 Path 變量

  • 在"系統(tǒng)變量"部分找到 Path 變量
  • 點擊"編輯"按鈕
  • 點擊"新建"
  • 添加 pnpm 所在的路徑(比如:C:\Users\你的用戶名\AppData\Roaming\npm

保存更改

  • 點擊"確定"保存所有更改

這里有個重要的提示:有時候需要重啟命令提示符或 PowerShell,有時候甚至需要重啟電腦才能使環(huán)境變量生效。

驗證環(huán)境變量配置

重新打開命令提示符或 PowerShell,驗證配置是否生效:

# 驗證 pnpm 命令
pnpm --version

# 如果還不行,可以檢查 PATH 中是否包含了我們添加的路徑
echo %PATH%

如果仍然不工作,我們可以嘗試在當(dāng)前會話中臨時添加 PATH:

# 臨時添加 PATH(只對當(dāng)前會話有效)
set PATH=%PATH%;C:\Users\你的用戶名\AppData\Roaming\npm

# 然后再次嘗試
pnpm --version

Linux/macOS 系統(tǒng)環(huán)境變量配置

在 Linux 和 macOS 系統(tǒng)中,環(huán)境變量的配置方式略有不同,主要取決于你使用的 shell 類型。

檢查當(dāng)前使用的 shell

首先確認你正在使用哪種 shell:

# 查看當(dāng)前使用的 shell
echo $SHELL

# 常見的 shell 有:
# /bin/bash (Bash)
# /bin/zsh (Zsh) - macOS Catalina 及之后版本的默認 shell
# /bin/fish (Fish)

配置對應(yīng)的 shell 配置文件

根據(jù)不同的 shell,我們需要編輯不同的配置文件:

對于 Bash Shell:

# 檢查是否存在 ~/.bashrc 或 ~/.bash_profile
ls -la ~/.bashrc ~/.bash_profile

# 通常使用 ~/.bashrc
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc

# 重新加載配置
source ~/.bashrc

# 如果使用的是 ~/.bash_profile
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile
source ~/.bash_profile

對于 Zsh Shell(macOS 默認):

# 編輯 ~/.zshrc
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.zshrc

# 重新加載配置
source ~/.zshrc

對于 Fish Shell:

# 編輯 Fish 配置文件
echo 'set -gx PATH $HOME/.local/bin $PATH' >> ~/.config/fish/config.fish

# 重新加載配置
source ~/.config/fish/config.fish

驗證和調(diào)試環(huán)境變量

配置完成后,我們需要驗證是否生效:

# 檢查 pnpm 版本
pnpm --version

# 檢查 PATH 是否包含正確路徑
echo $PATH

# 如果想要精確檢查 pnpm 的位置
which pnpm

如果仍然遇到問題,我們可以使用一些調(diào)試技巧:

# 檢查 pnpm 的安裝位置
npm list -g pnpm

# 手動查找 pnpm
find /usr -name "pnpm" 2>/dev/null
find ~ -name "pnpm" 2>/dev/null

# 檢查 shell 配置是否正確加載
cat ~/.zshrc | grep PATH

完整的實戰(zhàn)案例:從零開始搭建 React 項目

現(xiàn)在讓我們通過一個完整的實戰(zhàn)案例,演示從零開始配置 pnpm 環(huán)境并創(chuàng)建 React 項目的全過程。這個案例基于我最近為客戶搭建的一個實際項目。

環(huán)境準備和驗證

首先創(chuàng)建一個新的工作目錄,并檢查當(dāng)前環(huán)境狀態(tài):

# 創(chuàng)建項目目錄
mkdir pnpm-react-demo
cd pnpm-react-demo

# 檢查當(dāng)前 Node.js 和 npm 狀態(tài)
echo "=== 環(huán)境檢查 ==="
echo "Node.js 版本:"
node --version

echo "npm 版本:"
npm --version

echo "pnpm 狀態(tài)檢查:"
if command -v pnpm &> /dev/null; then
    echo "pnpm 版本: $(pnpm --version)"
else
    echo "pnpm 未安裝,開始安裝..."
fi

優(yōu)化 pnpm 配置

為了更好的管理依賴,我們可以配置 pnpm 的存儲路徑和其他優(yōu)化設(shè)置:

# 設(shè)置全局存儲路徑
pnpm config set store-dir ~/.pnpm-store

# 設(shè)置全局安裝路徑
pnpm config set global-dir ~/.pnpm-global

# 在 Linux/macOS 中,將全局二進制文件路徑添加到 PATH
if [[ "$OSTYPE" == "linux-gnu"* ]] || [[ "$OSTYPE" == "darwin"* ]]; then
    echo 'export PATH="$HOME/.pnpm-global/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
    echo "已配置全局 PATH"
fi

# 啟用嚴格模式(可選)
pnpm config set strict-peer-dependencies false
pnpm config set auto-install-peers true

創(chuàng)建 React 項目

現(xiàn)在使用 pnpm 創(chuàng)建一個新的 React 項目:

# 使用 pnpm 創(chuàng)建 Vite + React 應(yīng)用
echo "開始創(chuàng)建 React 項目..."
pnpm create vite@latest my-react-app --template react

# 進入項目目錄
cd my-react-app

# 安裝項目依賴
echo "安裝項目依賴..."
pnpm install

# 檢查項目結(jié)構(gòu)
echo "項目結(jié)構(gòu):"
ls -la

# 啟動開發(fā)服務(wù)器
echo "啟動開發(fā)服務(wù)器..."
pnpm dev

這個過程中,pnpm 會創(chuàng)建一個標(biāo)準的 React 項目結(jié)構(gòu),并安裝所有必要的依賴。

項目配置文件詳解

讓我們查看并理解 pnpm 創(chuàng)建的項目中的重要配置文件。首先是 package.json

{
  "name": "my-react-app",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite",
    "build": "vite build",
    "lint": "eslint . --ext js,jsx --report-unused-disable-directives --max-warnings 0",
    "preview": "vite preview"
  },
  "dependencies": {
    "react": "^18.2.0",
    "react-dom": "^18.2.0"
  },
  "devDependencies": {
    "@types/react": "^18.2.15",
    "@types/react-dom": "^18.2.7",
    "@vitejs/plugin-react": "^4.0.3",
    "eslint": "^8.45.0",
    "eslint-plugin-react": "^7.32.2",
    "eslint-plugin-react-hooks": "^4.6.0",
    "eslint-plugin-react-refresh": "^0.4.3",
    "vite": "^4.4.5"
  }
}

創(chuàng)建 pnpm 特有的配置文件 .npmrc

# 使用 pnpm 的嚴格模式
strict-peer-dependencies=false
auto-install-peers=true

# 設(shè)置鏡像源(針對中國用戶)
registry=https://registry.npmmirror.com/

# 并發(fā)設(shè)置
fetch-retries=3
fetch-retry-factor=10
fetch-retry-mintimeout=60000
fetch-retry-maxtimeout=600000

# 網(wǎng)絡(luò)超時設(shè)置
timeout=300000

高級功能:pnpm 工作區(qū)配置

對于大型項目,我們可以使用 pnpm 的工作區(qū)功能來管理多個包。讓我演示如何設(shè)置一個 monorepo 項目:

# 創(chuàng)建工作區(qū)根目錄
mkdir pnpm-monorepo-demo
cd pnpm-monorepo-demo

# 初始化根目錄的 package.json
pnpm init

編輯根目錄的 package.json

{
  "name": "pnpm-monorepo-demo",
  "version": "1.0.0",
  "description": "A pnpm monorepo demo",
  "scripts": {
    "build": "pnpm -r run build",
    "test": "pnpm -r run test",
    "dev": "pnpm -r --parallel run dev",
    "clean": "pnpm -r run clean",
    "lint": "pnpm -r run lint"
  },
  "devDependencies": {
    "typescript": "^5.0.2",
    "@types/node": "^18.0.0"
  },
  "keywords": ["monorepo", "pnpm", "workspace"],
  "author": "Your Name",
  "license": "MIT"
}

創(chuàng)建 pnpm-workspace.yaml 文件定義工作區(qū):

packages:
  # 所有在 packages/ 和 apps/ 子目錄中的包
  - 'packages/**'
  - 'apps/**'
  # 排除在 test 目錄中的包
  - '!**/test/**'

創(chuàng)建項目結(jié)構(gòu):

# 創(chuàng)建目錄結(jié)構(gòu)
mkdir packages
mkdir apps
mkdir packages/utils
mkdir packages/shared-components
mkdir apps/web-app
mkdir apps/admin-app

# 初始化各個子包
cd packages/utils && pnpm init
cd ../shared-components && pnpm init
cd ../../apps/web-app && pnpm init
cd ../admin-app && pnpm init
cd ../..

為每個子包創(chuàng)建基本的 package.json,以 packages/utils/package.json 為例:

{
  "name": "@monorepo/utils",
  "version": "1.0.0",
  "description": "Utility functions for the monorepo",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "scripts": {
    "build": "tsc",
    "dev": "tsc --watch",
    "clean": "rm -rf dist",
    "lint": "eslint src/**/*.ts"
  },
  "devDependencies": {
    "typescript": "^5.0.2"
  }
}

工作區(qū)依賴管理實戰(zhàn)

在工作區(qū)中管理依賴是 pnpm 最強大的功能之一:

# 在根目錄為所有包安裝共享依賴
pnpm add -wD typescript @types/node eslint

# 為特定包安裝依賴
pnpm add react --filter @monorepo/web-app
pnpm add react-dom --filter @monorepo/web-app

# 在工作區(qū)內(nèi)安裝本地包作為依賴
pnpm add @monorepo/utils --filter @monorepo/web-app --workspace
pnpm add @monorepo/shared-components --filter @monorepo/web-app --workspace

# 安裝所有包的依賴
pnpm install

# 查看工作區(qū)依賴樹
pnpm list -r

創(chuàng)建 TypeScript 配置文件 tsconfig.json 在根目錄:

{
  "compilerOptions": {
    "target": "ES2020",
    "module": "ESNext",
    "moduleResolution": "node",
    "esModuleInterop": true,
    "strict": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true,
    "declaration": true,
    "outDir": "dist",
    "rootDir": "src",
    "baseUrl": ".",
    "paths": {
      "@monorepo/utils": ["packages/utils/src"],
      "@monorepo/shared-components": ["packages/shared-components/src"]
    }
  },
  "include": ["packages/**/src", "apps/**/src"],
  "exclude": ["node_modules", "dist"]
}

高級配置和性能優(yōu)化

配置鏡像源加速下載

為了提高安裝速度,特別是在國內(nèi)網(wǎng)絡(luò)環(huán)境下,配置鏡像源非常重要:

# 設(shè)置 npm 鏡像源
pnpm config set registry https://registry.npmmirror.com/

# 設(shè)置 node-gyp 鏡像(針對需要編譯的包)
pnpm config set node_gyp_mirror https://npmmirror.com/mirrors/node-gyp/

# 設(shè)置 Electron 鏡像
pnpm config set electron_mirror https://npmmirror.com/mirrors/electron/

# 查看所有配置
pnpm config list

性能優(yōu)化配置

創(chuàng)建項目級的 .npmrc 文件進行高級性能配置:

# 網(wǎng)絡(luò)配置
fetch-retries=5
fetch-retry-factor=2
fetch-retry-mintimeout=10000
fetch-retry-maxtimeout=60000
timeout=300000

# 并發(fā)配置
network-concurrency=16
child-concurrency=8

# 緩存配置
prefer-offline=true
use-store-server=true

# 日志配置
loglevel=warn
progress=false

# 安全配置
ignore-scripts=false
strict-ssl=true

使用 pnpm 的鉤子腳本

在 package.json 中添加 pnpm 特有的鉤子腳本可以自動化很多流程:

{
  "scripts": {
    "preinstall": "echo '開始安裝依賴...' && node scripts/preinstall.js",
    "postinstall": "echo '依賴安裝完成!' && node scripts/postinstall.js",
    "prebuild": "pnpm run lint",
    "postbuild": "node scripts/analyze-bundle.js",
    "dev": "vite",
    "build": "vite build",
    "lint": "eslint . --ext js,jsx,ts,tsx",
    "type-check": "tsc --noEmit"
  },
  "pnpm": {
    "overrides": {
      "react": "^18.2.0",
      "react-dom": "^18.2.0",
      "typescript": "^5.0.2"
    },
    "peerDependencyRules": {
      "ignoreMissing": ["react", "react-dom"]
    }
  }
}

創(chuàng)建相應(yīng)的腳本文件 scripts/preinstall.js

#!/usr/bin/env node

const fs = require('fs');
const path = require('path');

console.log('?? 運行預(yù)安裝檢查...');

// 檢查 Node.js 版本
const requiredVersion = '16.0.0';
const currentVersion = process.version.slice(1);

function compareVersions(a, b) {
  const aParts = a.split('.').map(Number);
  const bParts = b.split('.').map(Number);
  
  for (let i = 0; i < 3; i++) {
    if (aParts[i] > bParts[i]) return 1;
    if (aParts[i] < bParts[i]) return -1;
  }
  return 0;
}

if (compareVersions(currentVersion, requiredVersion) < 0) {
  console.error(`? Node.js 版本過低,需要 ${requiredVersion} 或更高版本`);
  process.exit(1);
}

console.log('? Node.js 版本檢查通過');
console.log('? 預(yù)安裝檢查完成');

故障排除和常見問題解決

在實際工作中,我們可能會遇到各種問題。這里分享一些常見問題的解決方案:

問題1:pnpm 命令找到但是執(zhí)行報錯

# 如果出現(xiàn)權(quán)限錯誤
pnpm store path
# 檢查存儲路徑權(quán)限
sudo chown -R $(whoami) ~/.pnpm-store

# 或者重新修復(fù)存儲
pnpm store prune

問題2:依賴安裝失敗

# 清除緩存并重新安裝
pnpm store prune
rm -rf node_modules
pnpm install

# 或者使用離線模式
pnpm install --offline

問題3:工作區(qū)依賴解析問題

# 更新所有工作區(qū)包
pnpm -r update

# 檢查依賴沖突
pnpm list --depth=10

# 解決 peer dependencies 問題
pnpm install --strict-peer-dependencies=false

總結(jié)

通過本文的詳細講解,相信你已經(jīng)對 “pnpm 不是內(nèi)部或外部命令” 這個錯誤有了全面的理解,并掌握了從安裝配置到高級使用的完整技能。pnpm 作為一個現(xiàn)代化的包管理器,確實能為我們的開發(fā)工作流帶來顯著的效率提升。

記住,環(huán)境配置問題雖然令人煩惱,但一旦理解其工作原理,解決起來就會得心應(yīng)手。pnpm 的強大功能,特別是其工作區(qū)支持和高效的依賴管理,使其成為現(xiàn)代前端開發(fā)中不可或缺的工具。

希望這篇文章能幫助你順利解決 pnpm 環(huán)境配置問題,并在日常開發(fā)中充分發(fā)揮 pnpm 的優(yōu)勢!

以上就是“pnpm不是內(nèi)部或外部命令” 錯誤的完整解決方案的詳細內(nèi)容,更多關(guān)于pnpm不是內(nèi)部或外部命令的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論

新安县| 曲水县| 什邡市| 石泉县| 江津市| 江津市| 喀喇沁旗| 桐城市| 上思县| 金阳县| 金阳县| 丰台区| 潍坊市| 浦城县| 正定县| 简阳市| 宜阳县| 马山县| 高安市| 乌鲁木齐县| 来宾市| 韶山市| 松桃| 新蔡县| 滦南县| 宁波市| 平泉县| 宁德市| 南安市| 武城县| 巫溪县| 伊吾县| 太和县| 梅州市| 客服| 东丰县| 宁化县| 陇南市| 二手房| 通渭县| 文成县|