Tag Archives: XXX is not a function

Syntax error: typeerror: about installing sass in vue3 this.getOptions is not a function

Vue3 successfully installed sass, but the following error occurred during compilation


 ERROR  Failed to compile with 1 error                                                                            PM 1:05:09

 error  in ./src/components/HelloWorld.vue?vue&type=style&index=0&id=469af010&lang=scss

Syntax Error: TypeError: this.getOptions is not a function


 @ ./node_modules/vue-style-loader??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/vue-loader-v16/dist/stylePostLoader.js!./node_modules/postcss-loader/src??ref--8-oneOf-1-2!./node_modules/[email protected]@sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/components/HelloWorld.vue?vue&type=style&index=0&id=469af010&lang=scss 4:14-464 15:3-20:5 16:22-472
 @ ./src/components/HelloWorld.vue?vue&type=style&index=0&id=469af010&lang=scss
 @ ./src/components/HelloWorld.vue
 @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/App.vue?vue&type=script&lang=js
 @ ./src/App.vue?vue&type=script&lang=js
 @ ./src/App.vue
 @ ./src/main.js
 @ multi (webpack)-dev-server/client?http://192.168.31.108:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js

Cause of the problem

When the above error occurs, it is found that the version of SASS loader is too high, so the above problem occurs in the compilation

resolvent

We need to unload

cnpm uninstall less-loader

After reinstalling

cnpm i [email protected] --save-dev

Finally, it is compiled successfully

TypeError: db.collection is not a function

1. Error description

F:\nodejs>node insertData.js
(node:10028) DeprecationWarning: current URL string parser is deprecated, and wi
ll be removed in a future version. To use the new parser, pass option { useNewUr
lParser: true } to MongoClient.connect.
���ӳɹ���
F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_client_ops.js
:439
      throw err;
      ^

TypeError: db.collection is not a function
    at writeData (F:\nodejs\insertData.js:5:22)
    at F:\nodejs\insertData.js:19:2
    at result (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.js:414:17
)
    at executeCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.
js:406:9)
    at err (F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_c
lient_ops.js:285:5)
    at connectCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\operat
ions\mongo_client_ops.js:240:5)
    at process.nextTick (F:\nodejs\node_modules\[email protected]@mongodb\lib\opera
tions\mongo_client_ops.js:436:7)
    at process._tickCallback (internal/process/next_tick.js:61:11)

F:\nodejs>node insertData.js
(node:4900) DeprecationWarning: current URL string parser is deprecated, and wil
l be removed in a future version. To use the new parser, pass option { useNewUrl
Parser: true } to MongoClient.connect.
���ӳɹ���
F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_client_ops.js
:439
      throw err;
      ^

TypeError: collection.insert is not a function
    at writeData (F:\nodejs\insertData.js:7:13)
    at F:\nodejs\insertData.js:19:2
    at result (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.js:414:17
)
    at executeCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.
js:406:9)
    at err (F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_c
lient_ops.js:285:5)
    at connectCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\operat
ions\mongo_client_ops.js:240:5)
    at process.nextTick (F:\nodejs\node_modules\[email protected]@mongodb\lib\opera
tions\mongo_client_ops.js:436:7)
    at process._tickCallback (internal/process/next_tick.js:61:11)

F:\nodejs>node insertData.js
(node:9572) DeprecationWarning: current URL string parser is deprecated, and wil
l be removed in a future version. To use the new parser, pass option { useNewUrl
Parser: true } to MongoClient.connect.
���ӳɹ���
F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_client_ops.js
:439
      throw err;
      ^

TypeError: collection.insertOne is not a function
    at writeData (F:\nodejs\insertData.js:7:13)
    at F:\nodejs\insertData.js:19:2
    at result (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.js:414:17
)
    at executeCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\utils.
js:406:9)
    at err (F:\nodejs\node_modules\[email protected]@mongodb\lib\operations\mongo_c
lient_ops.js:285:5)
    at connectCallback (F:\nodejs\node_modules\[email protected]@mongodb\lib\operat
ions\mongo_client_ops.js:240:5)
    at process.nextTick (F:\nodejs\node_modules\[email protected]@mongodb\lib\opera
tions\mongo_client_ops.js:436:7)
    at process._tickCallback (internal/process/next_tick.js:61:11)

F:\nodejs>node insertData.js
(node:10664) DeprecationWarning: current URL string parser is deprecated, and wi
ll be removed in a future version. To use the new parser, pass option { useNewUr
lParser: true } to MongoClient.connect.
���ӳɹ���
����MongoError: doc parameter must be an object
^C
F:\nodejs>node insertData.js
(node:10308) DeprecationWarning: current URL string parser is deprecated, and wi
ll be removed in a future version. To use the new parser, pass option { useNewUr
lParser: true } to MongoClient.connect.
���ӳɹ���
CommandResult {
  result: { n: 1, ok: 1 },
  connection:
   Connection {
     _events:
      { error: [Function],
        close: [Function],
        timeout: [Function],
        parseError: [Function] },
     _eventsCount: 4,
     _maxListeners: undefined,
     options:
      { host: 'localhost',
        port: 27017,
        size: 5,
        minSize: 0,
        connectionTimeout: 30000,
        socketTimeout: 360000,
        keepAlive: true,
        keepAliveInitialDelay: 300000,
        noDelay: true,
        ssl: false,
        checkServerIdentity: true,
        ca: null,
        crl: null,
        cert: null,
        key: null,
        passPhrase: null,
        rejectUnauthorized: false,
        promoteLongs: true,
        promoteValues: true,
        promoteBuffers: false,
        reconnect: true,
        reconnectInterval: 1000,
        reconnectTries: 30,
        domainsEnabled: false,
        disconnectHandler: [Store],
        cursorFactory: [Function],
        emitError: true,
        monitorCommands: false,
        socketOptions: {},
        promiseLibrary: [Function: Promise],
        clientInfo: [Object],
        read_preference_tags: null,
        readPreference: [ReadPreference],
        dbName: 'student',
        servers: [Array],
        server_options: [Object],
        db_options: [Object],
        rs_options: [Object],
        mongos_options: [Object],
        socketTimeoutMS: 360000,
        connectTimeoutMS: 30000,
        bson: BSON {} },
     id: 0,
     logger: Logger { className: 'Connection' },
     bson: BSON {},
     tag: undefined,
     messageHandler: [Function],
     maxBsonMessageSize: 67108864,
     port: 27017,
     host: 'localhost',
     family: undefined,
     keepAlive: true,
     keepAliveInitialDelay: 300000,
     noDelay: true,
     connectionTimeout: 30000,
     socketTimeout: 360000,
     destroyed: false,
     domainSocket: false,
     singleBufferSerializtion: true,
     serializationFunction: 'toBinUnified',
     ca: null,
     crl: null,
     cert: null,
     key: null,
     passphrase: null,
     ciphers: null,
     ecdhCurve: null,
     ssl: false,
     rejectUnauthorized: false,
     checkServerIdentity: true,
     responseOptions:
      { promoteLongs: true,
        promoteValues: true,
        promoteBuffers: false },
     flushing: false,
     queue: [],
     connection:
      Socket {
        connecting: false,
        _hadError: false,
        _handle: [TCP],
        _parent: null,
        _host: 'localhost',
        _readableState: [ReadableState],
        readable: true,
        _events: [Object],
        _eventsCount: 5,
        _maxListeners: undefined,
        _writableState: [WritableState],
        writable: true,
        allowHalfOpen: false,
        _sockname: null,
        _pendingData: null,
        _pendingEncoding: '',
        server: null,
        _server: null,
        timeout: 360000,
        [Symbol(asyncId)]: 15,
        [Symbol(lastWriteQueueSize)]: 0,
        [Symbol(timeout)]: [Timeout],
        [Symbol(kBytesRead)]: 0,
        [Symbol(kBytesWritten)]: 0 },
     writeStream: null,
     hashedName: '29bafad3b32b11dc7ce934204952515ea5984b3c',
     workItems: [],
     buffer: null,
     sizeOfMessage: 0,
     bytesRead: 0,
     stubBuffer: null },
  message:
   Response {
     parsed: true,
     raw:
      <Buffer 3c 00 00 00 f0 02 00 00 02 00 00 00 01 00 00 00 08 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 01 00 00 00 18 00 00 00 10 6e 00 01 00 00 00 01 6f
 6b ... >,
     data:
      <Buffer 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 18 00
00 00 10 6e 00 01 00 00 00 01 6f 6b 00 00 00 00 00 00 00 f0 3f 00>,
     bson: BSON {},
     opts:
      { promoteLongs: true,
        promoteValues: true,
        promoteBuffers: false },
     length: 60,
     requestId: 752,
     responseTo: 2,
     opCode: 1,
     fromCompressed: undefined,
     responseFlags: 8,
     cursorId: Long { _bsontype: 'Long', low_: 0, high_: 0 },
     startingFrom: 0,
     numberReturned: 1,
     documents: [ [Object] ],
     cursorNotFound: false,
     queryFailure: false,
     shardConfigStale: false,
     awaitCapable: true,
     promoteLongs: true,
     promoteValues: true,
     promoteBuffers: false,
     index: 44,
     hashedName: '29bafad3b32b11dc7ce934204952515ea5984b3c' },
  ops:
   [ { name: 'zhangsan', age: '30', _id: 5b70f4bea602b02844490a15 } ],
  insertedCount: 1,
  insertedId: 5b70f4bea602b02844490a15 }

F:\nodejs>

2. Cause of error

In use Node.js When you operate mongodb database and want to insert data records into it, you write a JavaScript file and call the collection function. However, the old version of the method and the new version of the method are not this, but db() instead.

3. Solutions

var MongoClient = require('mongodb').MongoClient;
var DB_URL = 'mongodb://localhost:27017/student';

var writeData = function(db,callback){
	var dbo = db.db('t_sales');
	var data = {'name':'zhangsan','age':'30'};
	dbo.collection('t_sales').insertOne(data,function(error,result){
		if(error){
			console.log('error:'+error);
			return;
		};

		callback(result);
	});
}

MongoClient.connect(DB_URL,function(error,db){
	console.log('connect success!');
	writeData(db,function(result){
		console.log(result);
		db.close();
	});
});