作者 lihongjuan

提交

正在显示 88 个修改的文件 包含 4826 行增加0 行删除

要显示太多修改。

为保证性能只显示 88 of 88+ 个文件。

{
"presets": [
["env", {
"modules": false,
"targets": {
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
}
}],
"stage-2"
],
"plugins": ["transform-vue-jsx", "transform-runtime"],
"env": {
"test": {
"presets": ["env", "stage-2"],
"plugins": ["transform-vue-jsx", "transform-es2015-modules-commonjs", "dynamic-import-node"]
}
}
}
... ...
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
... ...
.DS_Store
node_modules/
/dist/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
/test/unit/coverage/
/test/e2e/reports/
selenium-debug.log
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
... ...
// https://github.com/michael-ciniawsky/postcss-load-config
module.exports = {
"plugins": {
"postcss-import": {},
"postcss-url": {},
// to edit target browsers: use "browserslist" field in package.json
"autoprefixer": {}
}
}
... ...
# zhongmianpublic
> A Vue.js project
## Build Setup
``` bash
# install dependencies
npm install
# serve with hot reload at localhost:8080
npm run dev
# build for production with minification
npm run build
# build for production and view the bundle analyzer report
npm run build --report
# run unit tests
npm run unit
# run e2e tests
npm run e2e
# run all tests
npm test
```
For a detailed explanation on how things work, check out the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader).
... ...
'use strict'
require('./check-versions')()
process.env.NODE_ENV = 'production'
const ora = require('ora')
const rm = require('rimraf')
const path = require('path')
const chalk = require('chalk')
const webpack = require('webpack')
const config = require('../config')
const webpackConfig = require('./webpack.prod.conf')
const spinner = ora('building for production...')
spinner.start()
rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
if (err) throw err
webpack(webpackConfig, (err, stats) => {
spinner.stop()
if (err) throw err
process.stdout.write(stats.toString({
colors: true,
modules: false,
children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
chunks: false,
chunkModules: false
}) + '\n\n')
if (stats.hasErrors()) {
console.log(chalk.red(' Build failed with errors.\n'))
process.exit(1)
}
console.log(chalk.cyan(' Build complete.\n'))
console.log(chalk.yellow(
' Tip: built files are meant to be served over an HTTP server.\n' +
' Opening index.html over file:// won\'t work.\n'
))
})
})
... ...
'use strict'
const chalk = require('chalk')
const semver = require('semver')
const packageConfig = require('../package.json')
const shell = require('shelljs')
function exec (cmd) {
return require('child_process').execSync(cmd).toString().trim()
}
const versionRequirements = [
{
name: 'node',
currentVersion: semver.clean(process.version),
versionRequirement: packageConfig.engines.node
}
]
if (shell.which('npm')) {
versionRequirements.push({
name: 'npm',
currentVersion: exec('npm --version'),
versionRequirement: packageConfig.engines.npm
})
}
module.exports = function () {
const warnings = []
for (let i = 0; i < versionRequirements.length; i++) {
const mod = versionRequirements[i]
if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
warnings.push(mod.name + ': ' +
chalk.red(mod.currentVersion) + ' should be ' +
chalk.green(mod.versionRequirement)
)
}
}
if (warnings.length) {
console.log('')
console.log(chalk.yellow('To use this template, you must update following to modules:'))
console.log()
for (let i = 0; i < warnings.length; i++) {
const warning = warnings[i]
console.log(' ' + warning)
}
console.log()
process.exit(1)
}
}
... ...
'use strict'
const path = require('path')
const config = require('../config')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const packageConfig = require('../package.json')
exports.assetsPath = function (_path) {
const assetsSubDirectory = process.env.NODE_ENV === 'production'
? config.build.assetsSubDirectory
: config.dev.assetsSubDirectory
return path.posix.join(assetsSubDirectory, _path)
}
exports.cssLoaders = function (options) {
options = options || {}
const cssLoader = {
loader: 'css-loader',
options: {
sourceMap: options.sourceMap
}
}
const postcssLoader = {
loader: 'postcss-loader',
options: {
sourceMap: options.sourceMap
}
}
// generate loader string to be used with extract text plugin
function generateLoaders (loader, loaderOptions) {
const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
if (loader) {
loaders.push({
loader: loader + '-loader',
options: Object.assign({}, loaderOptions, {
sourceMap: options.sourceMap
})
})
}
// Extract CSS when that option is specified
// (which is the case during production build)
if (options.extract) {
return ExtractTextPlugin.extract({
use: loaders,
fallback: 'vue-style-loader'
})
} else {
return ['vue-style-loader'].concat(loaders)
}
}
// https://vue-loader.vuejs.org/en/configurations/extract-css.html
return {
css: generateLoaders(),
postcss: generateLoaders(),
less: generateLoaders('less'),
sass: generateLoaders('sass', { indentedSyntax: true }),
scss: generateLoaders('sass'),
stylus: generateLoaders('stylus'),
styl: generateLoaders('stylus')
}
}
// Generate loaders for standalone style files (outside of .vue)
exports.styleLoaders = function (options) {
const output = []
const loaders = exports.cssLoaders(options)
for (const extension in loaders) {
const loader = loaders[extension]
output.push({
test: new RegExp('\\.' + extension + '$'),
use: loader
})
}
return output
}
exports.createNotifierCallback = () => {
const notifier = require('node-notifier')
return (severity, errors) => {
if (severity !== 'error') return
const error = errors[0]
const filename = error.file && error.file.split('!').pop()
notifier.notify({
title: packageConfig.name,
message: severity + ': ' + error.name,
subtitle: filename || '',
icon: path.join(__dirname, 'logo.png')
})
}
}
... ...
'use strict'
const utils = require('./utils')
const config = require('../config')
const isProduction = process.env.NODE_ENV === 'production'
const sourceMapEnabled = isProduction
? config.build.productionSourceMap
: config.dev.cssSourceMap
module.exports = {
loaders: utils.cssLoaders({
sourceMap: sourceMapEnabled,
extract: isProduction
}),
cssSourceMap: sourceMapEnabled,
cacheBusting: config.dev.cacheBusting,
transformToRequire: {
video: ['src', 'poster'],
source: 'src',
img: 'src',
image: 'xlink:href'
}
}
... ...
'use strict'
const path = require('path')
const utils = require('./utils')
const config = require('../config')
const vueLoaderConfig = require('./vue-loader.conf')
function resolve (dir) {
return path.join(__dirname, '..', dir)
}
module.exports = {
context: path.resolve(__dirname, '../'),
entry: {
app: './src/main.js'
},
output: {
path: config.build.assetsRoot,
filename: '[name].js',
publicPath: process.env.NODE_ENV === 'production'
? config.build.assetsPublicPath
: config.dev.assetsPublicPath
},
resolve: {
extensions: ['.js', '.vue', '.json'],
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': resolve('src'),
}
},
module: {
rules: [
{
test: /\.vue$/,
loader: 'vue-loader',
options: vueLoaderConfig
},
{
test: /\.js$/,
loader: 'babel-loader',
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('img/[name].[hash:7].[ext]')
}
},
{
test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('media/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
}
}
]
},
node: {
// prevent webpack from injecting useless setImmediate polyfill because Vue
// source contains it (although only uses it if it's native).
setImmediate: false,
// prevent webpack from injecting mocks to Node native modules
// that does not make sense for the client
dgram: 'empty',
fs: 'empty',
net: 'empty',
tls: 'empty',
child_process: 'empty'
}
}
... ...
'use strict'
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const path = require('path')
const baseWebpackConfig = require('./webpack.base.conf')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
const portfinder = require('portfinder')
const HOST = process.env.HOST
const PORT = process.env.PORT && Number(process.env.PORT)
const devWebpackConfig = merge(baseWebpackConfig, {
module: {
rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
},
// cheap-module-eval-source-map is faster for development
devtool: config.dev.devtool,
// these devServer options should be customized in /config/index.js
devServer: {
clientLogLevel: 'warning',
historyApiFallback: {
rewrites: [
{ from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },
],
},
hot: true,
contentBase: false, // since we use CopyWebpackPlugin.
compress: true,
host: HOST || config.dev.host,
port: PORT || config.dev.port,
open: config.dev.autoOpenBrowser,
overlay: config.dev.errorOverlay
? { warnings: false, errors: true }
: false,
publicPath: config.dev.assetsPublicPath,
proxy: config.dev.proxyTable,
quiet: true, // necessary for FriendlyErrorsPlugin
watchOptions: {
poll: config.dev.poll,
}
},
plugins: [
new webpack.DefinePlugin({
'process.env': require('../config/dev.env')
}),
new webpack.HotModuleReplacementPlugin(),
new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
new webpack.NoEmitOnErrorsPlugin(),
// https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: 'index.html',
template: 'index.html',
inject: true
}),
// copy custom static assets
new CopyWebpackPlugin([
{
from: path.resolve(__dirname, '../static'),
to: config.dev.assetsSubDirectory,
ignore: ['.*']
}
])
]
})
module.exports = new Promise((resolve, reject) => {
portfinder.basePort = process.env.PORT || config.dev.port
portfinder.getPort((err, port) => {
if (err) {
reject(err)
} else {
// publish the new Port, necessary for e2e tests
process.env.PORT = port
// add port to devServer config
devWebpackConfig.devServer.port = port
// Add FriendlyErrorsPlugin
devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
compilationSuccessInfo: {
messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
},
onErrors: config.dev.notifyOnErrors
? utils.createNotifierCallback()
: undefined
}))
resolve(devWebpackConfig)
}
})
})
... ...
'use strict'
const path = require('path')
const utils = require('./utils')
const webpack = require('webpack')
const config = require('../config')
const merge = require('webpack-merge')
const baseWebpackConfig = require('./webpack.base.conf')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const ExtractTextPlugin = require('extract-text-webpack-plugin')
const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin')
const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
const env = process.env.NODE_ENV === 'testing'
? require('../config/test.env')
: require('../config/prod.env')
const webpackConfig = merge(baseWebpackConfig, {
module: {
rules: utils.styleLoaders({
sourceMap: config.build.productionSourceMap,
extract: true,
usePostCSS: true
})
},
devtool: config.build.productionSourceMap ? config.build.devtool : false,
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].[chunkhash].js'),
chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
},
plugins: [
// http://vuejs.github.io/vue-loader/en/workflow/production.html
new webpack.DefinePlugin({
'process.env': env
}),
new UglifyJsPlugin({
uglifyOptions: {
compress: {
warnings: false
}
},
sourceMap: config.build.productionSourceMap,
parallel: true
}),
// extract css into its own file
new ExtractTextPlugin({
filename: utils.assetsPath('css/[name].[contenthash].css'),
// Setting the following option to `false` will not extract CSS from codesplit chunks.
// Their CSS will instead be inserted dynamically with style-loader when the codesplit chunk has been loaded by webpack.
// It's currently set to `true` because we are seeing that sourcemaps are included in the codesplit bundle as well when it's `false`,
// increasing file size: https://github.com/vuejs-templates/webpack/issues/1110
allChunks: true,
}),
// Compress extracted CSS. We are using this plugin so that possible
// duplicated CSS from different components can be deduped.
new OptimizeCSSPlugin({
cssProcessorOptions: config.build.productionSourceMap
? { safe: true, map: { inline: false } }
: { safe: true }
}),
// generate dist index.html with correct asset hash for caching.
// you can customize output by editing /index.html
// see https://github.com/ampedandwired/html-webpack-plugin
new HtmlWebpackPlugin({
filename: process.env.NODE_ENV === 'testing'
? 'index.html'
: config.build.index,
template: 'index.html',
inject: true,
minify: {
removeComments: true,
collapseWhitespace: true,
removeAttributeQuotes: true
// more options:
// https://github.com/kangax/html-minifier#options-quick-reference
},
// necessary to consistently work with multiple chunks via CommonsChunkPlugin
chunksSortMode: 'dependency'
}),
// keep module.id stable when vendor modules does not change
new webpack.HashedModuleIdsPlugin(),
// enable scope hoisting
new webpack.optimize.ModuleConcatenationPlugin(),
// split vendor js into its own file
new webpack.optimize.CommonsChunkPlugin({
name: 'vendor',
minChunks (module) {
// any required modules inside node_modules are extracted to vendor
return (
module.resource &&
/\.js$/.test(module.resource) &&
module.resource.indexOf(
path.join(__dirname, '../node_modules')
) === 0
)
}
}),
// extract webpack runtime and module manifest to its own file in order to
// prevent vendor hash from being updated whenever app bundle is updated
new webpack.optimize.CommonsChunkPlugin({
name: 'manifest',
minChunks: Infinity
}),
// This instance extracts shared chunks from code splitted chunks and bundles them
// in a separate chunk, similar to the vendor chunk
// see: https://webpack.js.org/plugins/commons-chunk-plugin/#extra-async-commons-chunk
new webpack.optimize.CommonsChunkPlugin({
name: 'app',
async: 'vendor-async',
children: true,
minChunks: 3
}),
// copy custom static assets
new CopyWebpackPlugin([
{
from: path.resolve(__dirname, '../static'),
to: config.build.assetsSubDirectory,
ignore: ['.*']
}
])
]
})
if (config.build.productionGzip) {
const CompressionWebpackPlugin = require('compression-webpack-plugin')
webpackConfig.plugins.push(
new CompressionWebpackPlugin({
asset: '[path].gz[query]',
algorithm: 'gzip',
test: new RegExp(
'\\.(' +
config.build.productionGzipExtensions.join('|') +
')$'
),
threshold: 10240,
minRatio: 0.8
})
)
}
if (config.build.bundleAnalyzerReport) {
const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
webpackConfig.plugins.push(new BundleAnalyzerPlugin())
}
module.exports = webpackConfig
... ...
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"development"'
})
... ...
"use strict";
// Template version: 1.3.1
// see http://vuejs-templates.github.io/webpack for documentation.
const path = require("path");
module.exports = {
dev: {
// Paths
assetsSubDirectory: "static",
assetsPublicPath: "/",
proxyTable: {
"/api": {
target: "https://app.chinesenooddles.com", // 需要跨域请求的地址或者IP
changeOrigin: true, //是否跨域
pathRewrite: {
"^api": "/api" //需要rewrite重写的
}
}
},
// Various Dev Server settings
host: "localhost", // can be overwritten by process.env.HOST
port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
autoOpenBrowser: false,
errorOverlay: true,
notifyOnErrors: true,
poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
/**
* Source Maps
*/
// https://webpack.js.org/configuration/devtool/#development
devtool: "cheap-module-eval-source-map",
// If you have problems debugging vue-files in devtools,
// set this to false - it *may* help
// https://vue-loader.vuejs.org/en/options.html#cachebusting
cacheBusting: true,
cssSourceMap: true
},
build: {
// Template for index.html
index: path.resolve(__dirname, "../dist/index.html"),
// Paths
assetsRoot: path.resolve(__dirname, "../dist"),
assetsSubDirectory: "static",
assetsPublicPath: "/",
/**
* Source Maps
*/
productionSourceMap: true,
// https://webpack.js.org/configuration/devtool/#production
devtool: "#source-map",
// Gzip off by default as many popular static hosts such as
// Surge or Netlify already gzip all static assets for you.
// Before setting to `true`, make sure to:
// npm install --save-dev compression-webpack-plugin
productionGzip: false,
productionGzipExtensions: ["js", "css"],
// Run the build command with an extra argument to
// View the bundle analyzer report after build finishes:
// `npm run build --report`
// Set to `true` or `false` to always turn it on or off
bundleAnalyzerReport: process.env.npm_config_report
}
};
\ No newline at end of file
... ...
'use strict'
module.exports = {
NODE_ENV: '"production"'
}
... ...
'use strict'
const merge = require('webpack-merge')
const devEnv = require('./dev.env')
module.exports = merge(devEnv, {
NODE_ENV: '"testing"'
})
... ...
不能预览此文件类型
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<title>中国面条</title>
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
</body>
<script>
// 尺寸计算
function setFontSize() {
document.documentElement.style.fontSize =
document.documentElement.clientWidth / 7.5 + "px";
}
window.addEventListener(
"resize",
function() {
setFontSize();
},
false
);
setFontSize();
</script>
</html>
\ No newline at end of file
... ...
此 diff 太大无法显示。
{
"name": "zhongmianpublic",
"version": "1.0.0",
"description": "A Vue.js project",
"author": "lihongjuan <18848113498@163.com>",
"private": true,
"scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
"start": "npm run dev",
"unit": "jest --config test/unit/jest.conf.js --coverage",
"e2e": "node test/e2e/runner.js",
"test": "npm run unit && npm run e2e",
"build": "node build/build.js"
},
"dependencies": {
"vant": "^2.10.7",
"vconsole": "^3.3.4",
"vue": "^2.5.2",
"vue-router": "^3.0.1",
"weixin-js-sdk": "^1.6.0"
},
"devDependencies": {
"autoprefixer": "^7.1.2",
"axios": "^0.20.0",
"babel-core": "^6.22.1",
"babel-helper-vue-jsx-merge-props": "^2.0.3",
"babel-jest": "^21.0.2",
"babel-loader": "^7.1.1",
"babel-plugin-dynamic-import-node": "^1.2.0",
"babel-plugin-syntax-jsx": "^6.18.0",
"babel-plugin-transform-es2015-modules-commonjs": "^6.26.0",
"babel-plugin-transform-runtime": "^6.22.0",
"babel-plugin-transform-vue-jsx": "^3.5.0",
"babel-preset-env": "^1.3.2",
"babel-preset-stage-2": "^6.22.0",
"babel-register": "^6.22.0",
"chalk": "^2.0.1",
"chromedriver": "^2.27.2",
"copy-webpack-plugin": "^4.0.1",
"cross-spawn": "^5.0.1",
"css-loader": "^0.28.0",
"extract-text-webpack-plugin": "^3.0.0",
"file-loader": "^1.1.4",
"friendly-errors-webpack-plugin": "^1.6.1",
"html-webpack-plugin": "^2.30.1",
"jest": "^22.0.4",
"jest-serializer-vue": "^0.3.0",
"nightwatch": "^0.9.12",
"node-notifier": "^5.1.2",
"optimize-css-assets-webpack-plugin": "^3.2.0",
"ora": "^1.2.0",
"portfinder": "^1.0.13",
"postcss-import": "^11.0.0",
"postcss-loader": "^2.0.8",
"postcss-url": "^7.2.1",
"rimraf": "^2.6.0",
"selenium-server": "^3.0.1",
"semver": "^5.3.0",
"shelljs": "^0.7.6",
"uglifyjs-webpack-plugin": "^1.1.1",
"url-loader": "^0.5.8",
"vue-jest": "^1.0.2",
"vue-loader": "^13.3.0",
"vue-style-loader": "^3.0.1",
"vue-template-compiler": "^2.5.2",
"webpack": "^3.6.0",
"webpack-bundle-analyzer": "^2.9.0",
"webpack-dev-server": "^2.9.1",
"webpack-merge": "^4.1.0"
},
"engines": {
"node": ">= 6.0.0",
"npm": ">= 3.0.0"
},
"browserslist": [
"> 1%",
"last 2 versions",
"not ie <= 8"
]
}
... ...
<template>
<div id="app">
<router-view />
</div>
</template>
<script>
export default {
name: "App"
};
</script>
<style>
body,
html {
background: #f5f5f5;
}
#app {
}
img {
width: 100%;
height: 100%;
}
textarea {
border: none;
outline: none;
}
input {
border: none;
outline: none;
}
.van-tabbar--fixed {
height: 1rem !important;
}
.van-tabbar-item__text {
font-size: 0.12rem !important;
margin-top: 0.05rem !important;
}
.flex {
display: flex;
}
.flexone {
display: flex;
align-items: center;
}
.flextwo {
display: flex;
align-items: center;
justify-content: space-between;
}
.flexthree {
display: flex;
align-items: center;
justify-content: center;
}
.flexfour {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.flexfive {
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-around;
}
.register {
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.5);
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 5;
}
</style>
... ...
<template>
<div class="hello">
<h1>{{ msg }}</h1>
<h2>Essential Links</h2>
<ul>
<li>
<a
href="https://vuejs.org"
target="_blank"
>
Core Docs
</a>
</li>
<li>
<a
href="https://forum.vuejs.org"
target="_blank"
>
Forum
</a>
</li>
<li>
<a
href="https://chat.vuejs.org"
target="_blank"
>
Community Chat
</a>
</li>
<li>
<a
href="https://twitter.com/vuejs"
target="_blank"
>
Twitter
</a>
</li>
<br>
<li>
<a
href="http://vuejs-templates.github.io/webpack/"
target="_blank"
>
Docs for This Template
</a>
</li>
</ul>
<h2>Ecosystem</h2>
<ul>
<li>
<a
href="http://router.vuejs.org/"
target="_blank"
>
vue-router
</a>
</li>
<li>
<a
href="http://vuex.vuejs.org/"
target="_blank"
>
vuex
</a>
</li>
<li>
<a
href="http://vue-loader.vuejs.org/"
target="_blank"
>
vue-loader
</a>
</li>
<li>
<a
href="https://github.com/vuejs/awesome-vue"
target="_blank"
>
awesome-vue
</a>
</li>
</ul>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
}
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h1, h2 {
font-weight: normal;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>
... ...
<template>
<div class="containerbox"></div>
</template>
<script>
import Vue from "vue";
import { getUrlKey } from "../utils/utils.js";
const murl = "http://zhongmian.h.brofirst.cn";
const now_url = sessionStorage.getItem("now_url");
console.log("页面路径", now_url);
export default {
//生命周期函数
created() {
const code = this.GetUrlParame("code"); // 截取code
console.log("9999", code);
if (!code) {
let urlk = window.location.href;
console.log(urlk, 34893488493);
let that = this;
var url = "/api/user/authorize";
let param = {
redirect_uri: urlk
};
this.$axios
.post(url, param)
.then(function(res) {
console.log(res);
window.location.href = res.data.wechat_url;
})
.catch(function(error) {
console.log(error);
});
} else {
let param = {
platform: "wechat",
code: code
};
console.log(param);
this.$axios
.get("/api/user/third?code=" + code) //如果有code,说明用户点击了授权 将获取到的code传递给后台
.then(res => {
// 返回状态和UId
console.log(res, "返回的数据");
if (res.data) {
sessionStorage.setItem("token", res.data.token);
}
console.log(now_url, 99999);
if (now_url) {
window.location.replace(murl + now_url);
} else {
window.location.replace(murl);
}
});
}
},
data() {
return {};
},
methods: {
// 截取code
GetUrlParame(parameName) {
/// 获取地址栏指定参数的值
/// <param name="parameName">参数名</param>
// 获取url中跟在问号后面的部分
var parames = window.location.search;
// 检测参数是否存在
if (parames.indexOf(parameName) > -1) {
var parameValue = "";
parameValue = parames.substring(
parames.indexOf(parameName),
parames.length
);
// 检测后面是否还有参数
if (parameValue.indexOf("&") > -1) {
// 去除后面多余的参数, 得到最终 parameName=parameValue 形式的值
parameValue = parameValue.substring(0, parameValue.indexOf("&"));
// 去掉参数名, 得到最终纯值字符串
parameValue = parameValue.replace(parameName + "=", "");
return parameValue;
}
return "";
}
}
}
};
</script>
<style></style>
... ...
.docswiper {
width: 7.5rem;
height: 2rem;
}
.souimg {
width: 0.2rem;
height: 0.2rem;
margin-right: 0.1rem;
}
.bannerimg {
width: 7.5rem;
height: 2rem;
font-size: 0;
}
.hometop {
position: fixed;
top: 0;
left: 0;
z-index: 99;
}
.hometopbar {
padding: 0.24rem 0.3rem;
box-sizing: border-box;
background: linear-gradient(180deg, #f5f09e -43%, #bb873b 75%);
}
.hometopbark {
padding: 0.24rem 0.69rem;
box-sizing: border-box;
}
.homelogo {
width: 0.51rem;
height: 0.51rem;
border-radius: 50%;
}
.homesearch {
width: 4.48rem;
height: 0.51rem;
background: #ffffff;
border-radius: 0.26rem;
color: #7f7f7f;
font-size: 0.28rem;
padding: 0.09rem 0.3rem;
box-sizing: border-box;
}
.xiasanjiao {
width: 0.2rem;
height: 0.2rem;
margin-left: 0.06rem;
}
.searchpro {
width: 1.3rem;
height: 0.51rem;
background: #ffffff;
border-radius: 0.26rem;
padding: 0.01rem 0.1rem;
box-sizing: border-box;
}
.searchprok {
width: 1.4rem;
border: 1px solid#7F7F7F;
}
.homesearchk {
border: 1px solid#7F7F7F;
}
.proname {
font-size: 0.28rem;
color: #c68c3e;
width: 1rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.homepageitemimg {
width: 0.83rem;
height: 0.8rem;
margin-bottom: 0.17rem;
}
.homepageitemname {
color: #000000;
font-size: 0.28rem;
text-align: center;
}
.homepagebox {
margin-top: 3rem;
margin-bottom: 1.5rem;
}
.homekind {
padding: 0.32rem 0.8rem;
box-sizing: border-box;
background: #fff;
flex-wrap: wrap;
}
.homepageboxitem {
margin-right: 0.45rem;
margin-bottom: 0.17rem;
}
.homepageboxitem:nth-child(4n) {
margin-right: 0;
}
.fenleiword {
color: #7f7f7f;
font-size: 0.28rem;
}
.homefenlei {
padding: 0.24rem 1.6rem;
box-sizing: border-box;
border-bottom: 0.13rem solid #f5f5f5;
background: #fff;
}
.fenleiactive {
position: relative;
color: #000000;
}
.fenleiactive::after {
position: absolute;
display: block;
content: "";
width: 0.42rem;
height: 0.03rem;
background: #000000;
bottom: -0.1rem;
left: 50%;
transform: translateX(-50%);
}
.banggongimg {
width: 0.48rem;
height: 0.42rem;
margin-right: 0.3rem;
margin-top: 0.1rem;
}
.vipimg {
width: 1.21rem;
height: 0.44rem;
position: relative;
font-size: 0;
margin-right: 0.3rem;
margin-top: 0.1rem;
}
.vipname {
color: #fff;
font-size: 0.2rem;
position: absolute;
right: 0.26rem;
top: 0.1rem;
}
.tieziimg {
width: 1rem;
height: 1rem;
border-radius: 50%;
font-size: 0;
flex: 0 0 auto;
margin-right: 0.2rem;
}
.tieziimg img {
border-radius: 50%;
}
.tieziitem {
padding: 0.15rem 0.49rem;
box-sizing: border-box;
}
.tieziming {
color: #000000;
font-size: 0.28rem;
margin-right: 0.3rem;
margin-top: 0.1rem;
}
.tiezibto {
margin-top: 0.06rem;
}
.tiezifen {
color: #c68c3e;
font-size: 0.24rem;
margin-top: 0.23rem;
}
.tiezizhuan {
width: 1.2rem;
height: 0.35rem;
line-height: 0.35rem;
text-align: center;
box-sizing: border-box;
background: rgba(0, 0, 0, 0);
border: 1px solid #c68c3e;
border-radius: 0.18rem;
color: #c68c3e;
font-size: 0.2rem;
text-align: center;
margin-top: 0.15rem;
}
.teizicontenttop {
margin-top: 0.1rem;
}
.tiezicontentname {
width: 6.5rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
color: #000000;
font-size: 0.28rem;
font-weight: bold;
}
.starimg {
width: 0.3rem;
height: 0.3rem;
}
.tieziwordbox {
color: #898989;
font-size: 0.28rem;
margin-top: 0.08rem;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
}
.tieziimgimg {
width: 2.13rem;
height: 2.13rem;
margin-right: 0.06rem;
margin-bottom: 0.06rem;
}
.tieziimgimg:nth-child(3n) {
margin-right: 0;
}
.teiziimgbox {
flex-wrap: wrap;
margin-top: 0.1rem;
}
.lunimg {
width: 0.33rem;
height: 0.25rem;
margin-right: 0.08rem;
}
.teizipingitem {
color: #898989;
font-size: 0.2rem;
margin-left: 0.05rem;
margin-right: 0.58rem;
}
.tiezipingbot {
display: flex;
justify-content: flex-end;
align-items: center;
margin-top: 0.27rem;
}
.teizipingitem:last-child {
margin-right: 0;
}
.zanimg {
width: 0.27rem;
height: 0.27rem;
}
.tiezhlist {
background: #fff;
}
.publishwrap {
width: 7.5rem;
height: 3.31rem;
position: absolute;
bottom: 0;
left: 0;
background: #fff;
border-radius: 0.2rem 0.2rem 0 0;
padding: 0.6rem 0.63rem;
box-sizing: border-box;
}
.chahao {
width: 0.55rem;
height: 0.55rem;
margin: 0.25rem auto 0;
}
.tiezilisttopk {
background: #fff;
}
.tiezikind {
padding: 0.25rem 2.05rem;
box-sizing: border-box;
border-bottom: 0.12rem solid #f5f5f5;
}
.tiezikinditem {
color: #606060;
font-size: 0.3rem;
}
.tiezikindactive {
color: #f19b18;
position: relative;
}
.tiezikindactive::after {
display: block;
content: "";
width: 0.6rem;
height: 0.03rem;
background: #f19b18;
position: absolute;
left: 50%;
transform: translateX(-50%);
bottom: -0.12rem;
}
.hometopbackk {
background: #f5f5f5;
}
.videoimg {
width: 6.51rem;
height: 4rem;
position: relative;
}
.videobtn {
width: 1rem;
height: 1rem;
border-radius: 50%;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.tiezhuanbox {
margin-left: 0.33rem;
}
.commentname {
color: #000000;
font-size: 0.26rem;
font-weight: bold;
position: relative;
}
.commentname::before {
display: block;
content: "";
width: 0.03rem;
height: 0.18rem;
background: #000000;
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 0.18rem;
}
.commentboxfix {
width: 7.5rem;
height: 1rem;
background: #fff;
padding: 0.2rem 0.32rem;
box-sizing: border-box;
position: fixed;
left: 0;
bottom: 0;
}
.writebox {
width: 5.96rem;
height: 0.58rem;
opacity: 0.2;
background: #d3d3d3;
border: 1px solid #7f7f7f;
border-radius: 0.29rem;
color: #aaaaaa;
font-size: 0.28rem;
}
.writebox input {
background: transparent;
width: 100%;
height: 100%;
padding: 0.1rem 0.4rem;
box-sizing: border-box;
}
.fasend {
color: #f19b18;
font-size: 0.22rem;
margin-left: 0.24rem;
}
/* 个人主页 */
.personbox {
padding: 0.32rem 0.76rem;
box-sizing: border-box;
background: #fff;
border-bottom: 0.13rem solid #f5f5f5;
}
.personboxleft {
width: 1.05rem;
height: 1.05rem;
margin-right: 0.2rem;
}
.personname {
color: #000000;
font-size: 0.28rem;
font-weight: bold;
}
.personguan {
width: 1.24rem;
height: 0.35rem;
background: #f19b18;
border-radius: 0.17rem;
}
.personboxleft {
width: 1.05rem;
height: 1.05rem;
margin-right: 0.2rem;
border-radius: 50%;
}
.personboxleft img {
border-radius: 50%;
}
.personname {
color: #000000;
font-size: 0.28rem;
margin-right: 0.75rem;
}
.personguan {
width: 1.24rem;
height: 0.35rem;
background: #f19b18;
border-radius: 0.17rem;
color: #fff;
font-size: 0.28rem;
text-align: center;
line-height: 0.35rem;
}
.connectphone {
color: #898989;
font-size: 0.28rem;
margin-top: 0.16rem;
}
.zixunitem {
padding: 0.32rem 0.54rem;
box-sizing: border-box;
background: #fff;
margin-top: 0.2rem;
}
.zixunitemleft {
width: 1.5rem;
height: 1.5rem;
margin-right: 0.32rem;
flex: 0 0 auto;
}
.tiezicontentnamek {
width: 3.7rem;
}
.tieziwordboxk {
width: 4.5rem;
}
.teizipingitemk {
/* margin-right: 0.5rem; */
}
.luntandibu {
display: flex;
justify-content: flex-end;
align-items: center;
margin-top: 0.5rem;
}
/* 资质详情 */
.detailtop {
width: 7.5rem;
height: 4.8rem;
font-size: 0;
position: relative;
}
.zizhiname {
color: #fff;
font-size: 0.32rem;
position: absolute;
bottom: 0.23rem;
left: 0.53rem;
}
.zixuncontent {
color: #000000;
font-size: 0.28rem;
padding: 0.32rem;
background: #fff;
}
.allcomentbox {
background: #fff;
margin-top: 0.32rem;
border-top: 0.16rem solid #f5f5f5;
}
.commentname {
padding: 0.32rem;
box-sizing: border-box;
}
/* 中面资质 */
.zizhiitem {
width: 7.5rem;
height: 4rem;
position: relative;
margin-bottom: 0.16rem;
}
.zizhititle {
color: #fff;
font-size: 0.32rem;
position: absolute;
bottom: 0.22rem;
right: 0.6rem;
}
/* 投诉维权 */
.weiquanlist {
padding: 0 0.32rem;
box-sizing: border-box;
background: #fff;
}
.weiquanitem {
padding: 0.32rem;
box-sizing: border-box;
border-bottom: 1px solid #f5f5f5;
}
.weiguitou {
color: #333;
font-size: 0.28rem;
}
.youjian {
width: 0.2rem;
height: 0.2rem;
}
/* 我的考试 */
.mykaoshitop {
padding: 0.3rem 0.5rem;
box-sizing: border-box;
background: #fff;
}
.kaoshilist {
padding: 0.3rem 0.5rem;
box-sizing: border-box;
}
.kaoshirule {
padding: 0 0.5rem 0.3rem;
box-sizing: border-box;
}
.kaoshiruletitle {
color: #333;
font-size: 0.28rem;
text-align: center;
padding-top: 0.3rem;
box-sizing: border-box;
width: 100%;
border-top: 1px solid #d3d3d3;
}
.kaoshiruletext {
color: #333;
font-size: 0.28rem;
margin-top: 0.3rem;
}
/* 个人中心 */
.minetopkkk {
width: 7.5rem;
height: 1.93rem;
background: linear-gradient(180deg, #f5f09e -39%, #bb873b 74%);
position: relative;
}
.minetophezi {
width: 6.5rem;
border-radius: 0.44rem;
position: absolute;
top: 0.63rem;
left: 0.53rem;
background: #fff;
padding: 0.28rem 0.1rem;
box-sizing: border-box;
}
.banggongimgkk {
margin-right: 0;
}
.fubulist {
padding: 0.3rem 0.4rem;
box-sizing: border-box;
}
.fabuname {
color: #000000;
font-size: 0.28rem;
}
.collectbox {
margin-top: 2.1rem;
}
.collectboxitem {
color: #000000;
font-size: 0.28rem;
padding: 0.28rem 0.68rem;
box-sizing: border-box;
background: #fff;
border-bottom: 1px solid #f5f5f5;
}
.collectimg {
width: 0.44rem;
height: 0.42rem;
margin-right: 0.28rem;
}
.tuichu {
width: 6.35rem;
height: 0.97rem;
background: #c68c3e;
border-radius: 0.31rem;
color: #fff;
font-size: 0.32rem;
text-align: center;
line-height: 0.97rem;
position: fixed;
bottom: 0.38rem;
left: 0.57rem;
}
.nameitem {
color: #191919;
font-size: 0.28rem;
margin-left: 1.12rem;
}
.mycollectitem {
background: #fff;
margin-top: 0.2rem;
}
.nameleft {
width: 1.2rem;
}
.nameitemk {
margin-left: 0.3rem;
}
/* 考试结果 */
.resulttop {
width: 7.5rem;
height: 4.1rem;
background: #fff;
padding-top: 0.93rem;
}
.resultname {
color: #c68c3e;
font-size: 1.13rem;
text-align: center;
}
.resulttext {
color: #000000;
font-size: 0.28rem;
margin-top: 0.2rem;
text-align: center;
}
.lingzheng {
width: 6.31rem;
height: 0.96rem;
background: #c68c3e;
border-radius: 0.47rem;
margin: 0.88rem auto 0;
color: #fff;
font-size: 0.3rem;
text-align: center;
line-height: 0.96rem;
}
.zhengbox {
width: 5.88rem;
height: 3.76rem;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
.miangongbox {
position: absolute;
top: 1.19rem;
left: 0.59rem;
}
.year {
color: #3790b7;
font-size: 0.24rem;
}
.mianright {
width: 1.42rem;
height: 1.89rem;
position: relative;
}
.zhangimg {
width: 1.27rem;
height: 1.17rem;
position: absolute;
left: 0.05rem;
bottom: -0.6rem;
}
.mianleftname {
color: #333;
font-size: 0.24rem;
}
.mianleftnamek {
color: #3790b7;
font-size: 0.24rem;
}
.mianleftitem {
margin-bottom: 0.16rem;
}
.gonghao {
margin-top: 0.3rem;
margin-bottom: 0;
}
.fanhui {
width: 6.31rem;
height: 0.96rem;
background: #c68c3e;
border-radius: 0.47rem;
color: #fff;
font-size: 0.3rem;
text-align: center;
position: fixed;
bottom: 0.32rem;
left: 0.57rem;
line-height: 0.96rem;
}
.teiziimg {
width: 0.97rem;
height: 0.97rem;
margin-bottom: 0.13rem;
}
.xiaoxiitem {
color: #535353;
font-size: 0.28rem;
position: relative;
}
.tiezibox {
padding: 0.46rem 1.45rem;
box-sizing: border-box;
}
.seltieactive {
color: #f19b18;
}
.dot {
width: 0.2rem;
height: 0.2rem;
background: #ff0000;
border-radius: 50%;
position: absolute;
right: 0;
top: 0;
color: #ffff;
font-size: 0.18rem;
text-align: center;
line-height: 0.2rem;
}
.xiaoimg {
width: 0.76rem;
height: 0.76rem;
border-radius: 50%;
margin-right: 0.18rem;
}
.tietitle {
color: #000000;
font-size: 0.28rem;
}
.tiedate {
color: #727272;
font-size: 0.24rem;
margin-top: 0.04rem;
}
.tiezinametext {
color: #727272;
font-size: 0.28rem;
margin-top: 0.1rem;
}
.tieziboxlist {
background: #fff;
margin-top: 0.1rem;
padding-top: 0.9rem;
}
.tieziboxitem {
padding: 0.3rem 0.4rem;
box-sizing: border-box;
}
.tieziboxmiddle {
margin-left: 0.18rem;
}
.tieziboxmiddle {
width: 5.6rem;
}
.phonimg {
width: 0.34rem;
height: 0.34rem;
margin-right: 0.46rem;
}
.phone {
width: 7.15rem;
height: 0.72rem;
background: #ffffff;
border-radius: 0.08rem;
color: #f19b18;
font-size: 0.28rem;
margin-bottom: 0.12rem;
}
.quxiao {
width: 7.15rem;
height: 0.72rem;
background: #ffffff;
border-radius: 0.08rem;
color: #f19b18;
font-size: 0.28rem;
text-align: center;
line-height: 0.72rem;
}
.quxiaofix {
position: fixed;
bottom: 0.18rem;
left: 0;
padding: 0 0.18rem;
box-sizing: border-box;
}
\ No newline at end of file
... ...
<template>
<div>
<div class="tabbar">
<van-tabbar
v-model="tabbarTempValue"
@change="onChange"
active-color="#F19B18"
>
<van-tabbar-item>
首页
<template #icon="props">
<img
class="icon-img ketangimg"
:src="props.active ? icon.homeactive : icon.home"
/>
</template>
</van-tabbar-item>
<van-tabbar-item>
消息
<template #icon="props">
<img
class="icon-img shequimg"
:src="props.active ? icon.xiaoxiactive : icon.xiaoxi"
/>
</template>
</van-tabbar-item>
<van-tabbar-item>
发布
<template #icon="props">
<img
class="icon-img ketangimg"
:src="props.active ? icon.fabu : icon.fabu"
/>
</template>
</van-tabbar-item>
<van-tabbar-item>
客服
<template #icon="props">
<img
class="icon-img kefuimgk"
:src="props.active ? icon.kefuactive : icon.kefu"
/>
</template>
</van-tabbar-item>
<van-tabbar-item>
个人中心
<template #icon="props">
<img
class="icon-img centerimgk"
:src="props.active ? icon.mineactive : icon.mine"
/>
</template>
</van-tabbar-item>
</van-tabbar>
</div>
<!-- 弹出层 -->
<div class="register" v-if="showpublish">
<div class="publishwrap">
<div class="flextwo">
<div class="homepageboxitem flexfour" @click="duanshipin(1)">
<img
src="../assets/duanzhipin.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">短视频区</div>
</div>
<div class="homepageboxitem flexfour" @click="duanshipin(2)">
<img src="../assets/banggong.png" alt="" class="homepageitemimg" />
<div class="homepageitemname">帮工招聘</div>
</div>
<div class="homepageboxitem flexfour" @click="duanshipin(3)">
<img src="../assets/zhuanrang.png" alt="" class="homepageitemimg" />
<div class="homepageitemname">面坊转让</div>
</div>
<div class="homepageboxitem flexfour" @click="duanshipin(4)">
<img src="../assets/zhenghun.png" alt="" class="homepageitemimg" />
<div class="homepageitemname">征婚交友</div>
</div>
</div>
<div class="chahao" @click="hidetanceng">
<img src="../assets/chahao.png" alt="" />
</div>
</div>
</div>
<!-- 电话 -->
<div class="register" v-if="showphone">
<div class="quxiaofix">
<div class="phone flexthree">
<img src="../assets/phone.png" alt="" class="phonimg" />
呼叫400-0230-777
</div>
<div class="quxiao" @click="cancelphone">取消</div>
</div>
</div>
</div>
</template>
<script>
import Vue from "vue";
import { Tabbar, TabbarItem } from "vant";
import { Icon } from "vant";
import { Notify } from "vant";
Vue.use(Notify);
Vue.use(Tabbar).use(TabbarItem);
Vue.use(Icon);
export default {
props: {
active: Number
},
data() {
return {
showpublish: false,
showphone: false,
tabbarTempValue: this.active,
icon: {
home: require("../assets/home.png"),
homeactive: require("../assets/homeactive.png"),
xiaoxi: require("../assets/xiaoxi.png"),
xiaoxiactive: require("../assets/xiaoxiactive.png"),
fabu: require("../assets/fabu.png"),
fabu: require("../assets/fabu.png"),
kefu: require("../assets/kefu.png"),
kefuactive: require("../assets/kefu.png"),
mine: require("../assets/mine.png"),
mineactive: require("../assets/mineactive.png")
}
};
},
methods: {
onChange(index) {
console.log(index);
if (index == 0) {
this.$router.push("/homepage");
} else if (index == 1) {
this.$router.push("/xiaoxi");
} else if (index == 2) {
this.showpublish = true;
} else if (index == 4) {
this.$router.push("/mine");
} else if (index == 3) {
this.showphone = true;
}
// const routerArray = ["/homepage", "/zhishi", "/message"];
// this.$router.push(routerArray[index]);
},
hidetanceng() {
this.showpublish = false;
},
cancelphone() {
this.showphone = false;
},
// 短视频跳转
duanshipin(id) {
if (id == 1) {
this.$router.push({
path: "/publish",
query: {
type: 1
}
});
} else if (id == 2) {
this.$router.push({
path: "/publish",
query: {
type: 2
}
});
} else if (id == 3) {
this.$router.push({
path: "/publish",
query: {
type: 3
}
});
} else if (id == 4) {
this.$router.push({
path: "/publish",
query: {
type: 4
}
});
}
}
}
};
</script>
<style>
@import "./style/homepage.css";
.ketangimg {
width: 0.33rem;
height: 0.33rem !important;
}
.shequimg {
width: 0.28rem;
height: 0.33rem !important;
}
.kefuimgk {
width: 0.37rem;
height: 0.33rem !important;
}
.centerimgk {
width: 0.29rem;
height: 0.33rem !important;
}
</style>
... ...
<template>
<div class="container">
<div class="tiezitop tiezilisttopk">
<div class="hometopbark flextwo">
<div class="homesearch homesearchk flexone">
<img src="../../../assets/sousuo.png" alt="" class="souimg" />
<div class="souenter">请输入关键词搜索</div>
</div>
<div class="searchpro searchprok flexone">
<div class="proname">江苏省</div>
<img src="../../../assets/xiasanjiao.png" alt="" class="xiasanjiao" />
</div>
</div>
<div class="tiezikind flextwo">
<div
class="tiezikinditem"
:class="tiezisel == 1 ? 'tiezikindactive' : ''"
@click="seltiekind(1)"
>
招聘
</div>
<div
class="tiezikinditem"
:class="tiezisel == 2 ? 'tiezikindactive' : ''"
@click="seltiekind(2)"
>
求职
</div>
</div>
</div>
<div class="tiezhlist">
<div class="tieziitem">
<div class="tiezitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "帮工招聘";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="tiezitop tiezilisttopk">
<div class="hometopbark hometopbackk flextwo">
<div class="homesearch flexone">
<img src="../../../assets/sousuo.png" alt="" class="souimg" />
<div class="souenter">请输入关键词搜索</div>
</div>
<div class="searchpro flexone">
<div class="proname">江苏省</div>
<img src="../../../assets/xiasanjiao.png" alt="" class="xiasanjiao" />
</div>
</div>
</div>
<div class="tiezhlist">
<div class="tieziitem" @click="tiezidetail">
<div class="tiezitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="videoimg">
<img src="../../../assets/banner.png" alt="" />
<img
src="../../../assets/bofang_icon@2x.png"
alt=""
class="videobtn"
/>
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "短视频专区";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
},
tiezidetail() {
this.$router.push({
path: "/tiezidetail",
query: {
type: 3
}
});
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<!-- <div class="nodata" v-if="present_data==''">暂无考试内容</div> -->
<div>
<div class="texttitle">
考试题目一
<!-- {{ present_data.question_name }}({{
present_data.type == 1 ? "单选" : "多选"
}}) -->
<!-- 单选 -->
</div>
<!-- v-if="issure" -->
<div class="textlist">
<div class="textitem flex">
<div class="flex">
<!-- v-if="item.chose == true" -->
<div class="textitemleft">
<img src="../../../assets/meisel.png" alt="" />
<!-- <image src="../../static/meisel.png" mode="" v-else></image> -->
</div>
<div class="textitemright">
A。选项
<!-- {{ item.sel }}、{{ item.option_name }} -->
</div>
</div>
</div>
<div class="textitem flex">
<div class="flex">
<!-- v-if="item.chose == true" -->
<div class="textitemleft">
<img src="../../../assets/meisel.png" alt="" />
<!-- <image src="../../static/meisel.png" mode="" v-else></image> -->
</div>
<div class="textitemright">
B.选项
<!-- {{ item.sel }}、{{ item.option_name }} -->
</div>
</div>
</div>
<div class="textitem flex">
<div class="flex">
<!-- v-if="item.chose == true" -->
<div class="textitemleft">
<img src="../../../assets/meisel.png" alt="" />
<!-- <image src="../../static/meisel.png" mode="" v-else></image> -->
</div>
<div class="textitemright">
C。选项
<!-- {{ item.sel }}、{{ item.option_name }} -->
</div>
</div>
</div>
<div class="textitem flex">
<div class="flex">
<!-- v-if="item.chose == true" -->
<div class="textitemleft">
<img src="../../../assets/meisel.png" alt="" />
<!-- <image src="../../static/meisel.png" mode="" v-else></image> -->
</div>
<div class="textitemright">
D。选项
<!-- {{ item.sel }}、{{ item.option_name }} -->
</div>
</div>
</div>
</div>
<!-- <div class="textlist" v-else>
<div
class="textitem flex"
:class="
item.answer == 1
? 'selright'
: item.answer == 2 && item.chose == true
? 'selwrong flextwo'
: ''
"
v-for="(item, index) in present_data.option"
:key="index"
>
<div class="flex">
<div class="textitemleft">
<image
src="../../static/selright.png"
mode=""
v-if="item.answer == 1"
></image>
<image
src="../../static/slewrong.png"
mode=""
v-else-if="item.answer == 2 && item.chose == true"
></image>
<image src="../../static/meisel.png" mode="" v-else></image>
</div>
<div class="textitemright">
{{ item.sel }}、{{ item.option_name }}
</div>
</div>
<div class="wrongimg" v-if="item.answer == 2 && item.chose == true">
<image src="../../static/wrong.png" mode=""></image>
</div>
</div>
</div> -->
<div class="huiyuanbot boxsizing">
<!-- v-if="issure" -->
<div>
<div class="behuiyuanbtn">确认</div>
</div>
<!-- <div v-else>
<div
class="behuiyuanbtn"
@click="nextquestion"
v-if="next_data != ''"
>
下一题
</div>
<div v-else>
<div class="behuiyuanbtn" v-if="showfinish">完成</div>
<div class="behuiyuanbtn" @click="sure" v-else>完成</div>
</div> -->
</div>
</div>
</div>
</template>
<script>
export default {};
</script>
<style scoped>
.texttitle {
color: #06121f;
font-size: 0.32rem;
padding: 0.32rem 0.32rem 0;
box-sizing: border-box;
}
.textlist {
padding: 0 0.32rem 0;
box-sizing: border-box;
margin-top: 0.32rem;
border-top: 0.01rem solid #f5f5f5;
}
.textitem {
padding: 0.16rem 0.32rem;
box-sizing: border-box;
border: 0.02rem solid rgba(238, 238, 238, 1);
margin-bottom: 0.16rem;
}
.selright {
background: #fef0d7;
}
.textitemleft {
width: 0.48rem;
height: 0.48rem;
font-size: 0;
}
.textitemright {
color: #06121f;
font-size: 0.32rem;
margin-left: 0.16rem;
}
.wrongimg {
width: 0.3rem;
height: 0.3rem;
font-size: 0;
}
.selwrong {
background: #ffe0db;
}
.behuiyuanbtn {
width: 6.86rem;
height: 0.88rem;
background: #c29445;
color: #fff;
font-size: 0.32rem;
text-align: center;
line-height: 0.88rem;
border-radius: 0.1rem;
}
.btnitem {
width: 3rem;
}
.huiyuanbot {
position: fixed;
/* background: #fff; */
bottom: 1rem;
left: 0;
width: 7.5rem;
height: 1.16rem;
padding: 0.14rem 0.32rem;
}
.textlist {
}
</style>
... ...
<template>
<div class="container">
<div class="hometop">
<div class="hometopbar flextwo">
<img
src="../../../assets/touxiang_img@2x.png"
alt=""
class="homelogo"
/>
<div class="homesearch flexone">
<!-- <img src="../../../assets/sousuo.png" alt="" class="souimg" /> -->
<div class="souenter">请输入关键词搜索</div>
</div>
<div class="searchpro flexone" @click="selectpro">
<div class="proname">江苏省</div>
<img src="../../../assets/xiasanjiao.png" alt="" class="xiasanjiao" />
</div>
</div>
<div class="docswiper">
<van-swipe
class="my-swipe"
:autoplay="2000"
indicator-color="white"
loop="true"
>
<van-swipe-item>
<div class="bannerimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</van-swipe-item>
<van-swipe-item>
<div class="bannerimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</van-swipe-item>
<van-swipe-item>
<div class="bannerimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</van-swipe-item>
<van-swipe-item>
<div class="bannerimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</van-swipe-item>
</van-swipe>
</div>
</div>
<div class="homepagebox ">
<div class="homekind flexone">
<div
class="homepageboxitem flexfour"
@click="duanshipin(1)"
v-for="(item, index) in tiezikind"
:key="index"
>
<img :src="item.image" alt="" class="homepageitemimg" />
<div class="homepageitemname">{{ item.name }}</div>
</div>
</div>
<div class="homefenlei flextwo">
<div
class="fenleiword"
:class="fenlei == 1 ? 'fenleiactive' : ''"
@click="getfen(1)"
>
最新
</div>
<div
class="fenleiword"
:class="fenlei == 2 ? 'fenleiactive' : ''"
@click="getfen(2)"
>
最热
</div>
<div
class="fenleiword"
:class="fenlei == 3 ? 'fenleiactive' : ''"
@click="getfen(3)"
>
我的
</div>
</div>
<!-- 帖子列表 -->
<div class="tiezhlist">
<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="onLoad"
>
<div
class="tieziitem"
v-for="(item, index) in tiezilist"
:key="index"
>
<div class="tiezitop flexone">
<div class="tieziimg">
<img :src="item.user.avatar" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">{{ item.user.nickname }}</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">{{ item.title }}</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox" v-html="item.content"></div>
<div
class="teiziimgbox flexone"
v-if="item.video != null"
@click.stop="govideo(item.video)"
>
<div class="videoimg">
<img :src="item.video_image" alt="" />
<img
src="../../../assets/bofang_icon@2x.png"
alt=""
class="videobtn"
/>
</div>
</div>
<div class="teiziimgbox flexone" v-if="item.images != null">
<div
class="tieziimgimg"
v-for="(item, indexk) in item.images"
:key="indexk"
@click.stop="previewimg(index, indexk)"
>
<img :src="item" alt="" />
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone" v-if="item.comment != 0">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
{{ item.comment }}
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
v-if="item.is_praise == 2"
/>
{{ item.praise }}
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</van-list>
</div>
</div>
<!-- 弹出层 -->
<div class="register" v-if="showpublish">
<div class="publishwrap">
<div class="flextwo">
<div class="homepageboxitem flexfour">
<img
src="../../../assets/duanzhipin.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">短视频区</div>
</div>
<div class="homepageboxitem flexfour">
<img
src="../../../assets/banggong.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">帮工招聘</div>
</div>
<div class="homepageboxitem flexfour">
<img
src="../../../assets/zhuanrang.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">面坊转让</div>
</div>
<div class="homepageboxitem flexfour">
<img
src="../../../assets/zhenghun.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">征婚交友</div>
</div>
</div>
<div class="chahao" @click="hidetanceng">
<img src="../../../assets/chahao.png" alt="" />
</div>
</div>
</div>
<!-- 选择器 -->
<van-picker
title="标题"
show-toolbar
:columns="citylist"
@confirm="onConfirm"
@cancel="onCancel"
@change="onChange"
v-if="showcity"
/>
<tabBar v-bind:active="0" />
</div>
</template>
<script>
import Vue from "vue";
import wx from "weixin-js-sdk";
console.log(area);
console.log(wx);
import tabBar from "@/components/tabBar.vue";
import { Swipe, SwipeItem, List, Toast } from "vant";
import area from "../../../utils/area.js";
console.log(area, "地址地址");
Vue.use(List);
Vue.use(Swipe);
Vue.use(SwipeItem);
export default {
components: {
tabBar
},
data() {
return {
fenlei: 1,
showpublish: false,
tiezikind: [],
tiezilist: [],
loading: false,
finished: false,
showpull: true,
page: 1,
citylist: area.province_list,
showcity: false
};
},
created() {
document.title = "中国面条";
// 获取帖子分类
this.gettiezikind();
// 获取帖子列表
this.getteizilist();
// 获取jssdk
this.getappid();
},
beforeRouteEnter(to, from, next) {
var u = navigator.userAgent;
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
// XXX: 修复iOS版微信HTML5 History兼容性问题
if (isiOS && to.path !== location.pathname) {
// 此处不可使用location.replace
location.assign(to.fullPath);
} else {
next();
}
},
methods: {
onConfirm(value, index) {
this.showcity = false;
},
onChange(picker, value, index) {},
onCancel() {
this.showcity = false;
},
// 选择城市
selectpro() {
this.showcity = true;
},
onLoad() {
// 异步更新数据
// setTimeout 仅做示例,真实场景中一般为 ajax 请求
setTimeout(() => {
let newpage = this.page;
newpage++;
this.page = newpage;
this.getteizilist();
// 加载状态结束
this.loading = false;
// 数据全部加载完成
if (this.showpull == false) {
this.finished = true;
}
}, 1000);
},
getlocation() {
console.log(999999);
},
// 获取appid
getappid() {
let that = this;
console.log(34734894890);
let urlk = window.location.href;
var url = "/api/user/get_jssdk";
let param = {
url: urlk
};
that.$axios
.post(url, param)
.then(function(res) {
console.log(res, "jssdkjsskd");
wx.config({
debug: true,
appId: res.data.appId, // 和获取Ticke的必须一样------必填,公众号的唯一标识
timestamp: res.data.timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
signature: res.data.signature, // 必填,签名,见附录1
//需要分享的列表项:发送给朋友,分享到朋友圈,分享到QQ,分享到QQ空间
jsApiList: ["getLocation"]
});
wx.getLocation({
type: "wgs84", // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
success: function(res) {
console.log(res, "获取地理位置");
// var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
// var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
// var speed = res.speed; // 速度,以米/每秒计
// var accuracy = res.accuracy; // 位置精度
let url =
"https://restapi.amap.com/v3/geocode/regeo?output=xml&location=" +
res.longitude +
"," +
res.latitude +
"&key=9acc6606cdf7174f62398f7fe460e104&radius=1000&extensions=all";
// window.location.href = url;
that.$axios({
url: "https://restapi.amap.com/v3/geocode/regeo",
type: "get",
dataType: "jsonp",
data: {
location: res.longitude + "," + res.latitude, //位置坐标:格式:location=lng<经度>,lat<纬度>
key: "9acc6606cdf7174f62398f7fe460e104", //开发密钥(Key)
extensions: "base" //base,返回基本地址信息;all 时会返回基本地址信息、附近 POI 内容、道路信息以及道路交叉口信息
},
success: function(res) {
console.log(res);
_this.positionName = res.regeocode.formatted_address; //结构化地址信息
_this.positionDesc = res.regeocode.formatted_address; //结构化地址信息
},
error: function(err) {
alert("服务端错误,请刷新浏览器后重试");
}
});
}
});
})
.catch(function(err) {
console.log(err);
});
},
// 获取分类列表
gettiezikind() {
let that = this;
console.log(34734894890);
let urlk = window.location.href;
var url = "/api/forum/get_forum_category";
let param = {};
that.$axios
.post(url, param)
.then(function(res) {
that.tiezikind = res.data;
console.log(that.tiezikind);
})
.catch(function(err) {
console.log(err);
});
},
// 获取帖子列表
getteizilist() {
let that = this;
console.log(34734894890);
let urlk = window.location.href;
var url = "/api/forum/get_forum";
let param = {
province_id: that.province_id,
search_type: "",
keyword: that.keyword,
type: that.type,
order: that.order,
page: that.page,
pageNum: 10
};
that.$axios
.post(url, param)
.then(function(res) {
that.tiezilist = that.tiezilist.concat(res.data);
if (that.page > 1) {
if (res.data.length == 0) {
Toast("没有更多了~");
that.showpull = false;
}
}
console.log(that.tiezilist);
})
.catch(function(err) {
console.log(err);
});
},
// 进入video
govideo(src) {
console.log(src);
},
getfen(id) {
this.fenlei = id;
},
hidetanceng() {
this.showpublish = false;
},
duanshipin(id) {
console.log(id);
if (id == 1) {
this.$router.push({
path: "/duanshipinlist"
});
} else if (id == 2) {
this.$router.push({
path: "/banggonglist"
});
} else if (id == 3) {
this.$router.push({
path: "/mianfanglsit"
});
} else if (id == 4) {
this.$router.push({
path: "/zhenghunlist"
});
}
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
.van-picker {
position: fixed;
bottom: 0;
left: 0;
z-index: 999;
width: 100%;
}
</style>
... ...
<template>
<div class="container">
<div class="weiquanlist">
<div class="weiquanitem flextwo">
<div class="weiguitou flexone">
<div class="nameleft">姓名</div>
<div class="nameitem nameitemk">
<input type="text" placeholder="输入姓名" />
</div>
</div>
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou flexone">
<div class="nameleft">籍贯</div>
<div class="nameitem nameitemk">
<input type="text" placeholder="输入籍贯" />
</div>
</div>
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou flexone">
<div class="nameleft">性别</div>
<div class="nameitem nameitemk">男</div>
</div>
<img src="../../../assets/youjiantou.png" alt="" class="youjian" />
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou flexone">
<div class="nameleft">联系方式</div>
<div class="nameitem nameitemk">
<input type="text" placeholder="输入联系方式" />
</div>
</div>
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou flexone">
<div class="nameleft">身份证号</div>
<div class="nameitem nameitemk">
<input type="text" placeholder="输入身份证号" />
</div>
</div>
</div>
</div>
<div class="tuichu">保存</div>
</div>
</template>
<script>
export default {};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="resultbox">
<div class="resulttop">
<div class="resultname">100分</div>
<div class="resulttext">恭喜您通过本次考试!</div>
</div>
<div class="lingzheng" @click="lingzheng">点击领证</div>
<div class="register" v-if="miangongshow" @click="hidezheng">
<div class="zhengbox">
<img src="../../../assets/zhengbox.png" alt="" />
<div class="miangongbox">
<div class="miangongtop flex">
<div class="miangongtopleft">
<div class="mianleftitem flexone">
<div class="mianleftname">姓名</div>
<div class="mianleftnamek">陈廷冲</div>
</div>
<div class="mianleftitem flexone">
<div class="mianleftname">籍贯</div>
<div class="mianleftnamek">陈廷冲</div>
</div>
<div class="mianleftitem flexone">
<div class="mianleftname">手机号</div>
<div class="mianleftnamek">123456789</div>
</div>
<div class="mianleftitem flexone">
<div class="mianleftname">发证日期</div>
<div class="mianleftnamek">
2020 <span class="year">年</span> 9
<span class="year">月</span>7 <span class="year">日</span>
</div>
</div>
<div class="mianleftitem flexone gonghao">
<div class="mianleftname">面工证号</div>
<div class="mianleftnamek">
202034943934909
</div>
</div>
</div>
<div class="mianright">
<img src="../../../assets/zhaopian_Img@2x.png" alt="" />
<img
src="../../../assets/zhang_img@2x.png"
alt=""
class="zhangimg"
/>
</div>
</div>
</div>
</div>
<div class="fanhui">返回首页 10s</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
miangongshow: false
};
},
methods: {
lingzheng() {
this.miangongshow = true;
},
hidezheng() {
this.miangongshow = false;
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="tiezitop tiezilisttopk">
<div class="hometopbark flextwo">
<div class="homesearch homesearchk flexone">
<img src="../../../assets/sousuo.png" alt="" class="souimg" />
<div class="souenter">请输入关键词搜索</div>
</div>
<div class="searchpro searchprok flexone">
<div class="proname">江苏省</div>
<img src="../../../assets/xiasanjiao.png" alt="" class="xiasanjiao" />
</div>
</div>
<div class="tiezikind flextwo">
<div
class="tiezikinditem"
:class="tiezisel == 1 ? 'tiezikindactive' : ''"
@click="seltiekind(1)"
>
求购
</div>
<div
class="tiezikinditem"
:class="tiezisel == 2 ? 'tiezikindactive' : ''"
@click="seltiekind(2)"
>
转让
</div>
</div>
</div>
<div class="tiezhlist">
<div class="tieziitem">
<div class="tiezitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "面坊转让";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="mykaoshitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="kaoshilist flextwo">
<div class="homepageboxitem flexfour">
<img
src="../../../assets/duanzhipin.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">帮工考试</div>
</div>
<div class="homepageboxitem flexfour">
<img
src="../../../assets/duanzhipin.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">配送员考试</div>
</div>
<div class="homepageboxitem flexfour">
<img
src="../../../assets/duanzhipin.png"
alt=""
class="homepageitemimg"
/>
<div class="homepageitemname">销售员考试</div>
</div>
</div>
<div class="kaoshirule">
<div class="kaoshiruletitle">考试规则</div>
<div class="kaoshiruletext">
考试规则考试规则考试规则考试规则考试规则考试规则考试规则考试规则
考试规则考试规则考试规则考试规则考试规则考试规则考试规则考试规则考试规则考试规则
考试规则考试规则考试规则考试规则
</div>
</div>
</div>
</template>
<script>
export default {};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="personbox flexone">
<div class="personboxleft">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="personboxright">
<div class="persondis flexone">
<div class="personname">中面小麦</div>
<div class="personguan">关注</div>
</div>
<div class="connectphone">联系方式:15822184563</div>
</div>
</div>
<div class="tiezhlist">
<div class="tieziitem">
<div class="tiezitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "征婚交友";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="addtop flextwo">
<div class="addtopleft">发布省份</div>
<div class="addprovince flexone" @click="selectcity">
<div class="proname">{{ provincename }}</div>
<div class="xiala">
<img src="../../../assets/huixia.png" alt="" />
</div>
</div>
</div>
<div class="addtop flextwo" v-if="type != 1">
<div class="addtopleft" v-if="type == 2">请选择招聘求职</div>
<div class="addtopleft" v-if="type == 3">请选择求购转让</div>
<div class="addtopleft" v-if="type == 4">请选择交友对象</div>
<div class="addprovince flexone" @click="banggong">
<div class="proname">{{ kindname }}</div>
<div class="xiala">
<img src="../../../assets/huixia.png" alt="" />
</div>
</div>
</div>
<div class="flextwo lianxitype">
<div class="connectbox flexone">
<div class="connectname">联系方式</div>
<div class="connectenter">
<input type="number" placeholder="输入号码" />
</div>
</div>
<div class="connectbox flexone">
<div class="connectname">联系人</div>
<div class="connectenter enternamek">
<input type="text" placeholder="输入姓名" />
</div>
</div>
</div>
<div class="contracttext">
<div class="text">
<input
type="text"
placeholder="加个标题哦~"
placeholder-class="entertitle"
@input="entertitle"
/>
</div>
<div class="contractcontent">
<textarea
name=""
id=""
cols="30"
rows="10"
placeholder="请输入帖子内容"
></textarea>
</div>
<!-- 上传视频 -->
<div v-if="type == 1">
<div class="text">请上传视频大小在25M以下</div>
<div class="addpicox flexone">
<div
class="addpic addvideo"
@click="chooseVideo"
v-if="videoimg == ''"
>
<img src="../../../assets/add.png" alt="" />
</div>
<div class="addpic addvideo" @click="chooseVideo" v-else>
<video :src="videoimg"></video>
</div>
</div>
</div>
<!-- 上传图片 -->
<div class="addpicox flexone" v-else>
<div class="addpic" v-for="(item, index) in image" :key="index">
<image :src="item" mode=""></image>
<div class="delimg" @click="deleteimg(index)" :data-url="item">
<image src="../../../assets/close.png" mode=""></image>
</div>
</div>
<div class="addpic" @click="chooseImage">
<img src="../../../assets/add.png" alt="" />
</div>
</div>
</div>
<div class="buybtn surebtn" @click="issure == false ? sure() : ''">
<div class="queding">确定</div>
</div>
<!-- 城市选择 -->
<van-picker
v-if="showcity"
show-toolbar
title="标题"
:columns="columns"
:default-index="2"
@confirm="onConfirm"
@cancel="onCancel"
/>
<van-picker
v-if="showhelp"
show-toolbar
title="标题"
:columns="banggongcolumns"
:default-index="2"
@confirm="onConfirm"
@cancel="onCancel"
/>
</div>
</template>
<script>
import Vue from "vue";
import { Picker, Toast } from "vant";
Vue.use(Picker);
export default {
data() {
return {
type: 2,
provincelist: [],
provincename: "江苏省",
index: 0,
province_id: "",
image: [],
title: "",
content: "",
videoimg: "",
issure: false,
kindname: "请选择",
search_type: "",
zhaoarr: [],
showcity: false,
columns: ["杭州", "宁波", "温州", "绍兴", "湖州", "嘉兴", "金华", "衢州"],
banggongcolumns: ["帮工", "招聘"],
showhelp: false,
type: ""
};
},
created() {
this.type = this.$route.query.type;
// this.provincename = uni.getStorageSync("provincename");
this.getprovinceid();
// this.type = options.type;
// if (options.type == 2) {
// let arr = [
// {
// id: 1,
// name: "招聘"
// },
// {
// id: 1,
// name: "求职"
// }
// ];
// this.zhaoarr = arr;
// } else if (options.type == 3) {
// let arr = [
// {
// id: 3,
// name: "求购"
// },
// {
// id: 4,
// name: "转让"
// }
// ];
// this.zhaoarr = arr;
// } else if (options.type == 4) {
// let arr = [
// {
// id: 5,
// name: "找男友"
// },
// {
// id: 6,
// name: "找女友"
// }
// ];
// this.zhaoarr = arr;
// }
this.getprovincelist();
},
methods: {
selectcity() {
this.showcity = true;
},
// 城市选择
onConfirm(value, index) {
// Toast(`当前值:${value}, 当前索引:${index}`);
this.showcity = false;
this.showhelp = false;
},
onChange(picker, value, index) {
// Toast(`当前值:${value}, 当前索引:${index}`);
},
onCancel() {
// Toast("取消");
this.showcity = false;
this.showhelp = false;
},
//帮工招聘
banggong() {
this.showhelp = true;
},
getprovinceid() {
let that = this;
var url = "question/get_area";
var params = {
province_name: that.provincename
};
console.log("7766554", params);
// app
// .post(url, params)
// .then(res => {
// that.province_id = res.data.data.id;
// })
// .catch(err => {
// console.log(err);
// });
},
// 选择招聘求职
bindzhaoChange(e) {
this.kindname = this.zhaoarr[e.target.value].name;
this.search_type = this.zhaoarr[e.target.value].id;
},
// 输入标题
entertitle(e) {
this.title = e.detail.value;
},
//输入内容
entercontent(e) {
this.content = e.detail.value;
},
// 获取省份列表
getprovincelist() {
let that = this;
var url = "forum/get_province";
var params = {
is_forum_hot: ""
};
console.log("7766554", params);
// app
// .post(url, params)
// .then(res => {
// console.log(res);
// that.provincelist = res.data.data;
// that.provincelist.forEach(function(value, index, array) {
// if (value.name == that.provincename) {
// that.index = index;
// }
// });
// this.getluntanlist();
// })
// .catch(err => {});
},
bindproChange(e) {
this.index = e.target.value;
this.provincename = this.provincelist[e.target.value].name;
this.province_id = this.provincelist[e.target.value].id;
this.page = 1;
this.luntanlist = [];
},
// 上传图片
chooseImage() {
let that = this;
// uni.chooseImage({
// count: 9,
// sizeType: ["original", "compressed"],
// success: function(res) {
// console.log(res);
// console.log(res.tempFilePaths);
// console.log(res.tempFilePaths[0]);
// res.tempFilePaths.forEach(function(value, index, array) {
// app
// .upload("image", value, "post")
// .then(res => {
// console.log("上传文件", res);
// let url = app.globalData.imgurl + res.url;
// that.image.push(url);
// console.log(that.image);
// })
// .catch(err => {
// console.log(err);
// });
// });
// },
// fail: function(res) {}
// });
},
deleteimg(index) {
this.image.splice(index, 1);
this.image = this.image;
console.log(this.iamge);
},
//上传视频
chooseVideo() {
let that = this;
uni.chooseVideo({
sourceType: ["album", "camera"],
maxDuration: 60,
camera: "back",
success(res) {
let file = res.tempFilePath;
// app
// .upload("image", file, "post")
// .then(res => {
// console.log("上传文件", res);
// let url = app.globalData.imgurl + res.url;
// that.videoimg = url;
// console.log(that.videoimg);
// })
// .catch(err => {
// console.log(err);
// });
}
});
},
sure() {
let that = this;
that.issure = true;
if (that.type == 2) {
if (that.search_type == "") {
Toast("请选择招聘求职");
that.issure = false;
return false;
}
}
if (that.type == 3) {
if (that.search_type == "") {
Toast("请选择招求购转让");
that.issure = false;
return false;
}
}
if (that.type == 4) {
if (that.search_type == "") {
Toast("请选择招求购转让");
that.issure = false;
return false;
}
}
if (that.title == "") {
Toast("请输入标题");
that.issure = false;
return false;
}
if (that.content == "") {
Toast("请输入帖子内容");
that.issure = false;
return false;
}
if (that.type == 1) {
if (that.videoimg == "") {
Toast("请上传视频");
that.issure = false;
return false;
}
}
var url = "forum/publish_forum";
var params = {
type: that.type,
province_id: that.province_id,
title: that.title,
content: that.content,
images: that.image.join(","),
search_type: that.search_type,
video: that.videoimg
};
console.log("7766554", params);
// app
// .post(url, params)
// .then(res => {
// console.log(res);
// })
// .catch(err => {
// console.log(err, 78767767667);
// });
}
}
};
</script>
<style scoped>
.text {
color: #bdc4ce;
font-size: 0.28rem;
}
.surebtn {
position: fixed;
bottom: 0;
left: 0.32rem;
bottom: 0.32rem;
}
.addpic {
width: 1.5rem;
height: 1.5rem;
font-size: 0;
margin-right: 0.18rem;
margin-bottom: 0.2rem;
position: relative;
}
.addvideo {
width: 1.5rem;
height: 1.5rem;
}
.addvideo image {
width: 100%;
height: 100%;
}
.addvideo video {
width: 100%;
height: 100%;
}
.delimg {
width: 0.4rem;
height: 0.4rem;
font-size: 0;
position: absolute;
top: -0.2rem;
right: -0.2rem;
}
.entertitle {
color: #bdc4ce;
font-size: 0.28rem;
}
.text {
padding-bottom: 0.28rem;
box-sizing: border-box;
border-bottom: 0.01rem solid #f5f5f5;
}
.title input {
color: #bdc4ce;
font-size: 0.28rem;
}
.contracttext {
padding: 0.32rem 0.32rem 0.2rem;
box-sizing: border-box;
background: #fff;
margin-top: 0.16rem;
margin-bottom: 1.6rem;
}
.contractcontent {
width: 6.86rem;
height: 2.2rem;
margin-bottom: 0.32rem;
}
.contractcontent textarea {
width: 100%;
height: 100%;
color: #bdc4ce;
font-size: 28rem;
padding: 0.28rem 0;
box-sizing: border-box;
}
.addtop {
width: 7.5rem;
height: 0.88rem;
background: #fff;
padding: 0 0.32rem;
box-sizing: border-box;
}
.addtopleft {
color: #3d444c;
font-size: 0.28rem;
}
.addprovince {
height: 0.6rem;
border: 0.02rem solid rgba(192, 198, 208, 1);
padding: 0.12rem 0.2rem;
box-sizing: border-box;
border-radius: 1.2rem;
}
.proname {
color: #c3c9d2;
font-size: 0.23rem;
}
.xiala {
width: 0.2rem;
height: 0.2rem;
font-size: 0;
margin-left: 0.16rem;
}
.addpicox {
margin-top: 0.2rem;
flex-wrap: wrap;
}
.contractcontent textarea {
color: #bdc4ce;
font-size: 0.28rem;
}
.buybtn {
padding: 0.25rem 0.57rem;
box-sizing: border-box;
position: fixed;
bottom: 0;
left: 0;
}
.queding {
width: 6.35rem;
height: 0.97rem;
background: #c68c3e;
border-radius: 0.31rem;
margin: 0 auto;
color: #fff;
font-size: 0.32rem;
text-align: center;
line-height: 0.97rem;
}
.connectname {
color: #191919;
font-size: 0.28rem;
}
.connectenter {
width: 2.26rem;
height: 0.46rem;
background: rgba(0, 0, 0, 0);
border: 1px solid #d3d3d3;
border-radius: 0.15rem;
color: #898989;
font-size: 0.28rem;
margin-left: 0.24rem;
}
.enternamek {
width: 1.7rem;
}
.connectenter input {
width: 100%;
height: 100%;
background: transparent;
padding: 0.12rem 0.32rem;
box-sizing: border-box;
}
.lianxitype {
background: #fff;
padding: 0.25rem 0.32rem;
box-sizing: border-box;
}
</style>
... ...
<template>
<div class="container">
<div class="tiezhlist tiezhlistbox">
<div class="tieziitem">
<div class="tiezitop flexone" @click="personclick">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="flexone">
<div class="tiezifen">30分钟</div>
<div class="tiezizhuan tiezhuanbox">面坊转让</div>
</div>
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="videoimg">
<img src="../../../assets/banner.png" alt="" />
<img
src="../../../assets/bofang_icon@2x.png"
alt=""
class="videobtn"
/>
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
<!-- 全部评论 -->
<div class="allcomentbox">
<div class="commentname">全部评论</div>
</div>
<div class="commentboxfix flexone">
<div class="writebox">
<input type="text" placeholder="写点什么..." />
</div>
<div class="fasend">发送</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "帖子详情";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
},
personclick() {
this.$router.push({
path: "/personpage",
query: {
type: 3
}
});
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
.tiezhlistbox {
margin-top: 0.24rem;
}
</style>
... ...
<template>
<div class="container">
<div class="weiquanlist">
<div class="weiquanitem flextwo">
<div class="weiguitou">
违规行为投诉
</div>
<img src="../../../assets/youjiantou.png" alt="" class="youjian" />
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou">
侵权投诉(人身权,知识产权等被侵犯)
</div>
<img src="../../../assets/youjiantou.png" alt="" class="youjian" />
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou">
品牌维护
</div>
<img src="../../../assets/youjiantou.png" alt="" class="youjian" />
</div>
<div class="weiquanitem flextwo">
<div class="weiguitou">
功能使用意见或建议反馈
</div>
<img src="../../../assets/youjiantou.png" alt="" class="youjian" />
</div>
</div>
</div>
</template>
<script>
export default {};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="tiezitop tiezilisttopk">
<div class="hometopbark flextwo">
<div class="homesearch homesearchk flexone">
<img src="../../../assets/sousuo.png" alt="" class="souimg" />
<div class="souenter">请输入关键词搜索</div>
</div>
<div class="searchpro searchprok flexone">
<div class="proname">江苏省</div>
<img src="../../../assets/xiasanjiao.png" alt="" class="xiasanjiao" />
</div>
</div>
<div class="tiezikind flextwo">
<div
class="tiezikinditem"
:class="tiezisel == 1 ? 'tiezikindactive' : ''"
@click="seltiekind(1)"
>
找男友
</div>
<div
class="tiezikinditem"
:class="tiezisel == 2 ? 'tiezikindactive' : ''"
@click="seltiekind(2)"
>
找女友
</div>
</div>
</div>
<div class="tiezhlist">
<div class="tieziitem">
<div class="tiezitop flexone">
<div class="tieziimg">
<img src="../../../assets/touxiang_img@2x.png" alt="" />
</div>
<div class="tieziright">
<div class="tiezirighttop flex">
<div>
<div class="tieziming">中面小麦</div>
<div class="tiezifen">30分钟</div>
</div>
<div>
<div class="vipimg">
<img src="../../../assets/vip_icon@2x.png" alt="" />
<div class="vipname">VIP1</div>
</div>
<div class="tiezizhuan">面坊转让</div>
</div>
<img
src="../../../assets/banggong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/peisong_icon@2x.png"
class="banggongimg"
alt=""
/>
<img
src="../../../assets/yirenzheng_icon@2x.png"
class="banggongimg"
alt=""
/>
</div>
<div class="tiezibto flexone"></div>
</div>
</div>
<div class="tiezicontent">
<div class="teizicontenttop flextwo">
<div class="tiezicontentname">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/>
</div>
<div class="tieziwordbox">滚滚长江东逝水</div>
<div class="teiziimgbox flexone">
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="tieziimgimg">
<img src="../../../assets/banner.png" alt="" />
</div>
</div>
<div class="tiezipingbot">
<div class="teizipingitem flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
tiezisel: 1
};
},
created() {
document.title = "征婚交友";
},
methods: {
seltiekind(id) {
this.tiezisel = id;
}
}
};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...
<template>
<div class="container">
<div class="zixunlist">
<div class="zixunitem flex">
<div class="zixunitemleft">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="zixunitemright">
<div class="flextwo">
<div class="tiezicontentname tiezicontentnamek">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<!-- <img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/> -->
</div>
<div class="tieziwordbox tieziwordboxk">滚滚长江东逝水</div>
<div class="flexone luntandibu">
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
<div class="zixunitem flex">
<div class="zixunitemleft">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="zixunitemright">
<div class="flextwo">
<div class="tiezicontentname tiezicontentnamek">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<!-- <img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/> -->
</div>
<div class="tieziwordbox tieziwordboxk">滚滚长江东逝水</div>
<div class="flexone luntandibu">
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
<div class="zixunitem flex">
<div class="zixunitemleft">
<img src="../../../assets/banner.png" alt="" />
</div>
<div class="zixunitemright">
<div class="flextwo">
<div class="tiezicontentname tiezicontentnamek">滚滚长江东逝水</div>
<img
src="../../../assets/xingxing_icon@2x.png"
alt=""
class="starimg"
/>
<!-- <img
src="../../../assets/weishoucang_icon@2x.png"
alt=""
class="starimg"
/> -->
</div>
<div class="tieziwordbox tieziwordboxk">滚滚长江东逝水</div>
<div class="flexone luntandibu">
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/pinglun_icon@2x.png"
alt=""
class="lunimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/zan_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
<div class="teizipingitem teizipingitemk flexone">
<img
src="../../../assets/cai_icon@2x.png"
alt=""
class="lunimg zanimg"
/>
1005
</div>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
export default {};
</script>
<style scoped>
@import "../../style/homepage.css";
</style>
... ...